Storage type metrics is missing

Hi,
We saw that there is not option to pull metrics about disk type(HHD,SSD).
Can you add a metric that will gather info about the disks and output the size the type and etc.

Hi, I also need that feature.

type and capacity are gathered here type is exported, but doesn't look like  bytes_per_sector or sectors are collected.
If you add these at line 54, does that give you want you need?
    44	  instance_labels:
    45	    - type
    46	    - model
    47	    - outage
    48	    - owner_node
    49	    - shared
    50	    - shelf
    51	    - shelf_bay
    52	    - serial_number
    53	    - failed
    54      - sectors            # <============= add here
    54      - bytes_per_sector

Thank you very much for the answer,
This will give me the information about what is the disk type in my
aggregate ? Or generally which type of disks I have in my machine ?
On Mon, 26 Jul 2021 at 20:49 Chris Grindstaff @.***>
wrote:

type and capacity are gathered here
https://github.com/NetApp/harvest/blob/2a6732b45c17d13f80929760800c4c0b1b5ec9ae/conf/zapi/cdot/9.8.0/disk.yaml#L11
type is exported, but doesn't look like bytes_per_sector or sectors are
collected.
If you add these at line 54, does that give you want you need?
44	  instance_labels:
45	    - type
46	    - model
47	    - outage
48	    - owner_node
49	    - shared
50	    - shelf
51	    - shelf_bay
52	    - serial_number
53	    - failed
54      - sectors            # <============= add here
54      - bytes_per_sector

—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/NetApp/harvest/issues/348#issuecomment-886903308, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AU67G2F3S7QGMM62J62GESTTZWNZDANCNFSM5A6JTEDQ
.

disk.yaml uses storage-disk-get-iter which is returns info about disks cluster wide
aggr.yaml uses aggr-get-iter and return aggregate-type which is the type of an aggregate. One of: hdd, hybrid, lun, ssd, vmdisk
@talshechanovitz which are you interested in?

In the end I want to know how many disks I have from each type(ssd,sata)
and for each aggregate they are associated  .
בתאריך יום ב׳, 26 ביולי 2021 ב-21:39 מאת Chris Grindstaff <
@.***>:

disk.yaml uses storage-disk-get-iter which is returns info about disks
cluster wide
aggr.yaml uses aggr-get-iter and return aggregate-type which is the type
of an aggregate. One of: hdd, hybrid, lun, ssd, vmdisk
@talshechanovitz https://github.com/talshechanovitz which are you
interested in?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/NetApp/harvest/issues/348#issuecomment-886936704, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AU67G2EAB6YXYTHRH2DJCETTZWTWPANCNFSM5A6JTEDQ
.

thanks for clarifying - we've added a disk dashboard to the backlog

Thank you very much , when do you think this will be done?
On Tue, 27 Jul 2021 at 15:56 Chris Grindstaff @.***>
wrote:

thanks for clarifying - we've added a disk dashboard to the backlog
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/NetApp/harvest/issues/348#issuecomment-887488206, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AU67G2BVTZV6IDUR66KXSRTTZ2UGNANCNFSM5A6JTEDQ
.

For now , there is option to get disk types from another metric that is already collected in harvest?

hi @talshechanovitz we hope to target that for the 21.08 release (mid Aug 2021)
Yes, disk type is collected via the disk.yaml
Example with most recent release
curl -s localhost:12995/metrics | rg disk | rg type

disk_labels{datacenter="nane1",cluster="ocum-mobility-01-02",node="ocum-mobility-01",disk="1.2.9",type="SSD",model="X371_S163A960ATE",outage="",owner_node="ocum-mobility-01",shared="true",shelf="2",shelf_bay="9",serial_number="F496ZX0J711876",failed="false"} 1.0
disk_labels{datacenter="nane1",cluster="ocum-mobility-01-02",node="ocum-mobility-02",disk="1.2.16",type="SSD",model="X371_S163A960ATE",outage="",owner_node="ocum-mobility-02",shared="true",shelf="2",shelf_bay="16",serial_number="F496ZX0J713072",failed="false"} 1.0
disk_labels{datacenter="nane1",cluster="ocum-mobility-01-02",node="ocum-mobility-01",disk="1.3.11",type="SSD",model="X371_S1643960ATE",outage="",owner_node="ocum-mobility-01",shared="true",shelf="3",shelf_bay="11",serial_number="F6SENF0K701356",failed="false"} 1.0
disk_labels{datacenter="nane1",cluster="ocum-mobility-01-02",node="ocum-mobility-02",disk="1.2.14",type="SSD",model="X371_S163A960ATE",outage="",owner_node="ocum-mobility-02",shared="true",shelf="2",shelf_bay="14",serial_number="F496ZX0J714820",failed="false"} 1.0

hi @talshechanovitz we hope to target that for the 21.08 release (mid Aug 2021)
Yes, disk type is collected via the disk.yaml
Example with most recent release
curl -s localhost:12995/metrics | rg disk | rg type

disk_labels{datacenter="nane1",cluster="ocum-mobility-01-02",node="ocum-mobility-01",disk="1.2.9",type="SSD",model="X371_S163A960ATE",outage="",owner_node="ocum-mobility-01",shared="true",shelf="2",shelf_bay="9",serial_number="F496ZX0J711876",failed="false"} 1.0
disk_labels{datacenter="nane1",cluster="ocum-mobility-01-02",node="ocum-mobility-02",disk="1.2.16",type="SSD",model="X371_S163A960ATE",outage="",owner_node="ocum-mobility-02",shared="true",shelf="2",shelf_bay="16",serial_number="F496ZX0J713072",failed="false"} 1.0
disk_labels{datacenter="nane1",cluster="ocum-mobility-01-02",node="ocum-mobility-01",disk="1.3.11",type="SSD",model="X371_S1643960ATE",outage="",owner_node="ocum-mobility-01",shared="true",shelf="3",shelf_bay="11",serial_number="F6SENF0K701356",failed="false"} 1.0
disk_labels{datacenter="nane1",cluster="ocum-mobility-01-02",node="ocum-mobility-02",disk="1.2.14",type="SSD",model="X371_S163A960ATE",outage="",owner_node="ocum-mobility-02",shared="true",shelf="2",shelf_bay="14",serial_number="F496ZX0J714820",failed="false"} 1.0

This metric will bring me if the disk is HHD or SSD.
I need to get the specific type like sata or sas.
Is it possible somehow?

hi @talshechanovitz disk dashboard added by this PR https://github.com/NetApp/harvest/pull/360 can you take a look and let us know if this addresses your ask?

The url http://<IP_ADDRESS>:3000/ doesn’t work
On Thu, 29 Jul 2021 at 15:45 Chris Grindstaff @.***>
wrote:

hi @talshechanovitz https://github.com/talshechanovitz disk dashboard
added by this PR #360 https://github.com/NetApp/harvest/pull/360 can
you take a look and let us know if this addresses your ask?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/NetApp/harvest/issues/348#issuecomment-889106139, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AU67G2DKB6I2R7UOH7MHD2LT2FEPNANCNFSM5A6JTEDQ
.

that's an internal site used for testing - if you want to use these changes in your local environment you'll need to build Harvest from source or wait for our next release - here's a screenshot

Hello @cgrinds ,
This dashboard is interesting for me too. In which release will be available? Does it have more info about the disks like status (broken, unassigned,etc), performance to detecting problems, etc.
Thanks.

hi @faguayot the next planned release is Aug. If you're comfortable building from source you can grab it sooner. Status is not there yet.

What about the type of the disk? Sata/sas/ssd there is option to add that?🙏
On Fri, 30 Jul 2021 at 15:04 Chris Grindstaff @.***>
wrote:

hi @faguayot https://github.com/faguayot the next planned release is
Aug. If you're comfortable building from source
https://github.com/NetApp/harvest#building-from-source you can grab it
sooner. Status is not there yet.
[image: image]
https://user-images.githubusercontent.com/242252/127650194-1da4546f-27db-48a0-8f69-55d75389c30c.png
[image: image]
https://user-images.githubusercontent.com/242252/127650223-70a0c112-37c5-411f-a3fa-9036e0715997.png
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/NetApp/harvest/issues/348#issuecomment-889846838, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AU67G2CT6QYPVIICXSLMZQDT2KINNANCNFSM5A6JTEDQ
.

Now we have added type and status in the disk dashboard.

nice job @Hardikl
@talshechanovitz take a look at the screenshot above and let us know if this has what you need.

Now we have added type and status in the disk dashboard.

Looks cool!!
Is there a way to sort by shelf and not by disk,
Because in the end I want to display my aggregate and his shelf’s type.

@bengoldenberg all columns are sortable
the disk type is queried in disk.yaml via the storage-disk-get-iter zapi

Now we have added type and status in the disk dashboard.

Hello @cgrinds ,
I am running the following version which I built from source:
**harvest version 21.08.0617- (commit ) (build date 2021-08-06T17:50:56+0200) linux/amd64**
But I don't have the Avg IOPS, Avg Latency or the Status in the Disk dashboard.
Additionally I have a question, do you use the real status which the disk has in the storage array or do you replace for Ok or failed?
Thanks.

Sorry I forgot to add an screenshoot, there you can appreciate too there is something wrong in the percent of disk utilization.

On the other hand, the unit for the section:

Disk and Take Drives Throughput

seems very big.

Now we have added type and status in the disk dashboard.

Hello @cgrinds ,
I am running the following version which I built from source:
**harvest version 21.08.0617- (commit ) (build date 2021-08-06T17:50:56+0200) linux/amd64**
But I don't have the Avg IOPS, Avg Latency or the Status in the Disk dashboard.
Additionally I have a question, do you use the real status which the disk has in the storage array or do you replace for Ok or failed?
Thanks.

Hi @faguayot ,
can you please add the detail of grafana version?
for the status question, we use outage field from storage-disk-get-iter zapi. when disk is fine without any issue, outage is empty, which mapped to grafana UI as Ok, And when some issue in disk then outage field would have show the detail like: unknown or not responding or init failed, etc from possible cases which would show as it is in status column in UI.

Hello @Hardikl,
Here the grafana version:
Grafana v7.4.3 (010f20c1c8)
Regarding the disk status issue, you said for example if a disk is in a maintenance mode, broken, unknown or whatever this will appear in the status coumn.Am I right?
Thanks.


use active remote if empty

last_remote_used  would return the active tracking remote if last remote is not set.

Seems reasonable.  Thanks again!


WIP: v0.3.0

Remove dbt utils installation by default
Extend gemma_fx (add two more variable for more configurability)
Improve documentation

Closes #39

Ready to be merged but waiting for GA4 and date spine input from @Dimi727


fileadapter issue on parse-server 2.2.4

When i updated parse-server version, i cannot save parse-file with parse-server-azure-storage.
it said cannotCreateBlob with no string...
please fix it.

hi @bdhwan, are you using the most recent parse-server-azure-storage module?  There was a bug in version 1.0.0 that has been fixed in 1.0.1

yes i was using recent version. thank you for fixibg bug!!

sorry but when can i use version 1.0.1??


Remove py2 compat

Fixes #31.

@goffi-contrib: care to take a look at this?

@ralphm Mind merging and releasing this?

Maybe merge this?

Bump.


Async streams must be declared with "await using var" (not "var" nor "using var") to utilize IAsyncDisposable implementation

To improve code quality in Xamarin.Essentials documentation. See Always call FlushAsync on StreamWriter(s) or Stream(s) before calling Dispose for details.
I file this issue from File Picker page but streams are also used on the following Xamarin.Essentials pages:

File System Helpers
Media Picker
Screenshot

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

ID: bde8b00e-bef2-d10c-268f-2e49e236a89f
Version Independent ID: dad8b07c-2227-c7ed-6369-d10d9b132e99
Content: Xamarin.Essentials: File Picker - Xamarin
Content Source: docs/essentials/file-picker.md
Product: xamarin
Technology: xamarin-essentials
GitHub Login: @jamesmontemagno
Microsoft Alias: jamont

@davidfowl is this accurate? Should I update this... is it different on mobile?

@jamesmontemagno I'm not David but still :)
There are async reads and async writes in the code. At the same time it (implicitly) flushes buffers synchronously. This is essentially not a bug but may have some negative performance impact if invoked on main thread in mobile scenario.


Add writing to files during a simulation

Pull Request
Description
Uses the IntervalHandler class to allow simulations to write to the output files while it is running.
This pull request addresses #145

[x] Conforms to PEP8 style standards (check with pylint, flake8, or similar)
[x] Code is documented with docstrings, or docstrings have been updated as appropriate
[ ] New unit test/integration test have been added to check new code
[x] All existing tests still pass

Codecov Report

Merging #156 into main will decrease coverage by 0.35%.
The diff coverage is 57.14%.

@@            Coverage Diff             @@
##             main     #156      +/-   ##
==========================================
- Coverage   93.16%   92.80%   -0.36%
==========================================
  Files           6        6
  Lines         702      709       +7
==========================================
+ Hits          654      658       +4
- Misses         48       51       +3

Impacted Files
Coverage Δ

turbopy/diagnostics.py
87.25% <57.14%> (-1.07%)
:arrow_down:

Continue to review full report at Codecov.

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

Hey @arichar6 , I'm really sorry that this PR is taking so long, but I'm not sure what exactly I'm supposed to do. In your last suggestion, you wanted me to implement the IntervalHandler class into the HistoryDiagnostic class, but that already seems to have been done. The current PR I have extends the IntervalHandler functionality to the ClockDiagnostic class, so should I do the same thing with the other "Diagnostic" classes? Again, sorry I'm taking so long with this.

Hi @AOstenfeld. Don't worry about the slow progress... I haven't exactly been fast getting back to you either!
I'll try and take a look at the PR today, and answer your questions. Thanks for sticking with this!

Alright, I think I'm finally back to working consistently.

How do I merge the changes from the main branch into here?

How do I merge the changes from the main branch into here?

I usually do this from the command line, or sometimes using a GUI. This page has a short overview of the git merge command. That site also has more details in their free online git book. Let me know if you still have questions. We can set up a call to chat about this.

I think I fixed all the errors that my earlier changes caused lol.

I think this is ready for review

I think this is ready for review

I believe that the interval handler works fine (or at least it should), but there is some unnecessary code that still uses the old dump_interval approach. I've commented it out for review, but I think it can be deleted.

Also, all the newly failed tests seem to be a result of missing the parameters that I commented out. I can change them too if the lines I commented out can in fact be removed.

I am working on getting the tests to pass. You are right that they are related to the un-needed parameters. I'll make a PR to your branch once I get this working. Hopefully it will be soon!

Codecov Report

Merging #156 (732cfae) into main (c3cd3f3) will increase coverage by 0.13%.
The diff coverage is 69.23%.

@@            Coverage Diff             @@
##             main     #156      +/-   ##
==========================================
+ Coverage   92.80%   92.94%   +0.13%
==========================================
  Files           6        6
  Lines         723      751      +28
==========================================
+ Hits          671      698      +27
- Misses         52       53       +1

Impacted Files
Coverage Δ

turbopy/diagnostics.py
87.44% <69.23%> (+0.06%)
:arrow_up:

turbopy/core.py
93.60% <0.00%> (+0.51%)
:arrow_up:

Continue to review full report at Codecov.

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


Copying a high-lighted selection in the terminal removes the high-lighted selection

[x] I am on the latest Hyper.app version
[x] I have searched the issues of this repo and believe that this is not a duplicate

OS Loki and Elementary:
Hyper.app latest:
Link of a Gist with the contents of your .hyper.js:
Relevent information from devtools (CMD+SHIFT+I on Mac OS, CTRL+SHIFT+I elsewhere):
The issue is reproducible in vanilla Hyper.app:

Issue

Copying a high-lighted selection in the terminal removes the high-lighted selection.
Ex: Highlight something in the terminal, copy it, and the selection is gone.
Most modern user interfaces face this problem

@BChip I can't reproduce this error on the laster hyper.app

@ppot Are you on Elementary OS (Ubuntu based)? It could just be my OS.

@BChip I'm on macOS

@BChip Are you copying with ctrl+c

Yes @ppot and I will create a GIF later tonight to show

@BChip Friendly ping 🎉

Having this same issue on Ubuntu 16.10

closed in PR #1218 :)

@ppot i only installed Hyper yesterday so that seems unlikely

@askl56 #1218 is in the next release! so 1.0.1 ;) comping soon this week or next!

Ah cool thanks @ppot


Fix suggested actions pushing behind header

resolve #640

Hi @Paveltarno - thanks for your contribution! :)
Can you also test this scenario when the Web Chat is initialized with the { showHeader: false } option?

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

@danmarshall Iv'e tested it in both header configurations, works nicely

Thanks for the fix @Paveltarno.
I updated your PR. Instead of using 40px as "scroll to bottom" detection tolerance. We will look at whether there is a suggested actions bar just show up hasActivityWithSuggestedActions. If a suggested actions bar just show up, we will use 40px as the tolerance. Otherwise, we will keep it as 1px.


Support supplying only an htmlEntryPoint

Assuming there is only one dart script tag, and it lives in the same library as the html file, we can just use that dart file as the entry point and not require it to be specified:
transformers:
- initialize:
    entryPoint: web/index.dart
    htmlEntryPoint: web/index.html

becomes just:
transformers:
- initialize:
    htmlEntryPoint: web/index.html

we could also possibly just use entryPoint but allow you to pass an html file instead of a dart file, and then do the right thing based on the file extension

How about we do this by hiding this transformer inside another transformer in web_components?
If you write:
transformers:
- web_components/initialize:
    entry_point: web/index.html

ah- never mind, I thought initially this was for specifying the entry point for html-initialization, not just plain initialization. Now that I see #10, I see that this was just to update the bootstrap.html

fixed in https://github.com/dart-lang/static_init/commit/8ff3cf318c18345a5ac9b99e6c315313c11893f6


[Automation] Generate Fluent Lite from Swagger netapp#package-2024-03

[Automation] Generate Fluent Lite from Swagger netapp#package-2024-03

/azp run java - netapp - mgmt - tests

API change check
APIView has identified API level changes in this PR and created following API reviews.
com.azure.resourcemanager:azure-resourcemanager-netapp

/azp run java - netapp - mgmt - tests


WriteFile is broken on Windows

I've read a couple issues on Windows support, and I'm not sure what the current support state is.
Anyway, the WriteFile function is broken on Windows, as *os.File.Chmod() used in the function is not supported on Windows:
https://github.com/google/renameio/blob/a368f9987532a68a3d676566141654a81aa8100b/writefile.go#L29

It does not seem possible to do atomic file replacement on Windows, see the discussion in #1.
If you want a chmod function that works on Windows, consider https://github.com/hectane/go-acl/blob/master/chmod.go#L14 (more recent version at https://github.com/twpayne/go-acl/blob/chezmoi/chmod.go#L14).

I also just noticed that these other referenced issues belong to another project: twpayne/chezmoi
I guess that caused some confusion here.
While not being atomic, it would still be better than just writing files directly, wouldn't it?
I don't care about chmod other than it breaking Windows compatibility.

The first link is to hectane/go-acl. This library has a pending pull request (https://github.com/hectane/go-acl/pull/14) that improves Windows support. The second link is to a friendly fork that includes that PR.

I think I did a poor job communicating what I am trying to achieve here.
In my case, I don't care about the chmod call, but want the library working.
Do you want to "fix" WriteFile by just leaving out the chmod call on Windows? As far as I understand, this is also how many Go std utils work: You give them permissions via os.FileMode, but they are actually only used on POSIX systems.
Or, do you want to let WriteFile broken as is on Windows until you find a real fix? Then I'd just remove the chmod call myself for the few times I need it.

I don’t do Windows development, so I’ll rely on a pull request containing a fix. Thanks in advance :)

Ok, so apparently f.Chmod(perm) errors out on windows as the syscall is not available but os.Chmod(filename, perm) does not error! Maybe we can just change the code to use the latter (with t.Name() as filename) ...

This issue is (arguably) fixed by #20. It may be worth re-opening #1 for when Windows supports atomic file operations.


Random Name Generator using Vanilla JS

WebMasterLog Repository (Proposing new issue)
:red_circle: Project Title : Random Name Generator
:red_circle: Aim : Build a website which can generate the random names of the people according to the choice of the user either male or female names.
:red_circle: Tech Stack Used : HTML, CSS, JS
:red_circle: Category :  Vanilla-JS

📍 Follow the Guidelines to Contribute in the Project :

You need to create a separate folder named as the Project Title.
Inside that folder, there will be all the main components.

Cover image of the application, if project will be deployed in future, with the name of the folder in Kebab-Case (hypen-separated).
Main files in formatted state so that code will be readable.
Other Images - In seprate folder named Images used to form the application.

Inside the Project folder, the README.md file must be filled up properly, with proper visualizations and descriptions.

:red_circle::yellow_circle: Points to Note :

The issues will be assigned on a first come first serve basis, 1 Issue == 1 PR.
"Issue Title" and "PR Title should be the same. Include issue number along with it.
Follow Contributing Guidelines & Code of Conduct before start Contributing.

:white_check_mark: To be Mentioned while taking the issue :

Full name :
GitHub Profile Link :
What is your participant role? (Mention the Open Source Program name. Eg. GSOC, GSSOC, SSOC, JWOC, etc.)

Happy Contributing 🚀
All the best. Enjoy your open source journey ahead. 😎

@Avdhesh-Varshney please assign this issue to me under JWOC'24

Please assign me under JWOC 2024.
Name = Sohan RoyChowdhury.
Github = https://github.com/SohanRC
Role = Under JWOC 2024.


Allow ordering of parameters in the docs

Introduces _doc_order, a list of all property names on a HasProperties class. This order will determine the order of the properties in the docs. After the docs are written, _doc_order is removed from the class dictionary.
Notes:

_doc_order must contain ALL property names or be unspecified/empty. Otherwise an AttributeError will be raised on class definition.
If _doc_order is not specified, the docs will be ordered alphabetically.
Required/Optional/Immutable hierarchy in the docs supersedes _doc_order; the order will only be reflected within those sections.

See: https://github.com/3ptscience/properties/issues/58

Current coverage is 98.23% (diff: 100%)

Merging #73 into dev will increase coverage by 0.01%

@@                dev        #73   diff @@
==========================================
  Files             7          7
  Lines          1015       1022     +7
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
+ Hits            997       1004     +7
  Misses           18         18
  Partials          0          0

Powered by Codecov. Last update 6491ecb...e33dd9f

@ThomasMatern: In the current implementation, an empty list isn't distinguishable from an unspecified one (b/c it is .pop(...)'d from the kwargs with a default of []. I guess the alternative would be to have .pop('_doc_order', None) and then if _doc_order is None: ..., or perhaps just .pop('_doc_order', sorted(_props)). Is there an advantage to one over the other?

@bsmithyman my question is not about the current implementation (it follows what's documented in the pull request), my question is why we want to even allow this. The user/developer should have only two options: specify _doc_order as a complete list of properties or not specify it at all. Setting it to anything else (empty list, None, incomplete list) should raise a value error. Unless there is an actual use-case that I'm missing?

@ThamasMatern: Makes sense. I don't have a strong opinion, but it would not be hard to raise an error. I think what is nice about the current structure is that regardless of whether the list is specified or not, it is put through the same process & the same validation is run. This cuts down on code replication.
Taking @fwkoch's existing code & making it a bit more strict, it is an easy fix to change lines 90–100 to:
_doc_order = classdict['_doc_order'] if '_doc_order' in classdict else sorted(_props)
if not isinstance(_doc_order, (list, tuple)):
    raise AttributeError(
        '_doc_order must be a list of property names'
    )
if sorted(list(_doc_order)) != sorted(_props):
    raise AttributeError(
        '_doc_order must be unspecified or contain ALL property names'
    )

and, in fact, replacing the first line with this is close to the same thing & a bit shorter:
_doc_order = classdict.pop('_doc_order', sorted(_props))

@fwkoch: You had some arguments I think for AttributeError vs. ValueError; beyond that I am not picky. Hope this helps?

@ThomasMatern, @bsmithyman - There needs to be some value of _doc_order that goes back to the default sorted(_props) behaviour in order for subclasses to override invalid _doc_order inherited from parent class.
I think it makes more sense for this to be None though rather than an empty list, similar to @bsmithyman's first comment.
import properties

class WithDocOrder(properties.HasProperties):
    _doc_order = ['b', 'a']
    a = properties.Integer('int a')
    b = properties.Integer('int b')

class WithoutDocOrder(WithDocOrder):
    _doc_order = None
    c = properties.Integer('int c')

All that said, hopefully alphabetizing will be sufficient for most cases. _doc_order will be an "advanced" and probably undocumented feature.

@fwkoch that makes sense. I didn't think of subclasses.


Intellij 20.1 Examples Import Issue

Intellij will not properly index the examples and complain that examples/commonMain doesn't have access to the core library (even though gradlew runs fine).
a workaround is to just manually add the module into intellij via the project structure menu
Note: This is probably a bug within intellij because gradle runs fine

Update: this is not a problem with 2019.2.4


pypi / conda package

Hi @danifranco and @iarganda ,
BiaPy looks fantastic. Congratulations!
I was just wondering if there are any plans to make the installation more easy/reproducible by uploading biapy to pypi and / or conda-forge?

https://realpython.com/pypi-publish-python-package/#configure-your-package
https://blog.gishub.org/how-to-publish-a-python-package-on-conda-forge

At the moment, the installation instructions mention to download the source git clone https://github.com/danifranco/BiaPy.git and then install it using pip install --editable . Thus, if I download it today and next year, I might retrieve different code. This could potentially break my downstream analysis. If I could pip install biapy==3.0 I would in both cases retrieve the same code.
I'd be happy to actively support you with this. In case you need assistance, just let me know!
Best,
Robert

Hello Robert!
Thank you so much for your words, we really appreciate your support.
You're right, we need to do this as soon as possible. I will post here once it's done ;)
Best,
Dani

Hi,
It's done! You can find it here: https://pypi.org/project/biapy/ . It was my first time doing it, so maybe something is wrong. I had a few problems doing it. Seems that in PyPI you can not change the description once the package is built so the first time I did it the README.md of my project was not rendered correctly under PyPI. After changing it in Github seems that you need to resubmit another version of the package, you can not use the same version or "refresh" the description somehow... So, I removed the first project in PyPI and re-uploaded BiaPy as 3.1version instead of 3.1.0, which was the first I did. Following versions will match the ones in Github.
Feel free to close the issue and thank you so much again!
Best,
Dani


Insiders Git SCM regenerates .git/index

VSCode Version: 1.36-insiders
OS Version: MacOS Mojave

I'm not sure the cause of this, but I get the following Git output
> git status -z -u
> git symbolic-ref --short HEAD
> git rev-parse master
> git rev-parse --symbolic-full-name master@{u}
> git rev-list --left-right master...refs/remotes/origin/master
> git for-each-ref --format %(refname) %(objectname) --sort -committerdate
> git remote --verbose

After this, if I ls .git, tells me that I have an index ## (where ## is some number, and continues to increment) file. If I rename this file to just index, the moment I open a file, it will rename index to index ##, and will continue to increment. I haven't experienced this issue before today, and I have disabled all extensions, but the Git SCM extension still seems to be running.
This results in Git telling me that at some point, I deleted all the files in my project, but added them back in as untracked. It also keeps deleting the currently open file from disk.

Does this issue occur when all extensions are disabled?: Yes

I'm pretty sure VS Code isn't doing this. Do you have any Git plugins, add-ons? Does the issue reproduce when you run those commands in a terminal, without using VS Code?

It does not happen outside of VSCode for me. I thought it had something to do with the git history, but that doesn't seem to be it. This issue seems to be only present from within VSCode, primarily when Git runs its auto-fetches (which I have disabled and oddly still fetches)

I should also note that this happens for literally one repository. It could be an issue with the .git folder entirely.

Interesting. What if you clone that repo all over again to a new folder?

@joaomoreno the funny thing is that I have done that and the issue still persists. I am not fully convinced that it's an issue with VSCode, but it's the only environment that it happens in.

What git version do you have installed? Try updating to the latest.


Document bug with disabled inputs caused by Firefox 64 and older

When using dependency libraries that depend on native events, in Firefox 64 and older, the input getter will not provide the correct value if it was set while the input is disabled, because the setter cannot trigger the event on the input (see this Firefox bug report). This can prove problematic when updating disabled fields by tying forms with models and the model load is delayed, or maybe the input is updated via user actions in other fields, etc.
See this JSFiddle in Firefox 64 or older to understand the bug.
Because this Firefox bug will be fixed in v65, which should land in January 2019, I don't think a fix is required. However, this issue should definitely be documented, because we spent quite a few hours debugging it, as it caused potential data loss in certain scenarios in our app.

@monovertex ,
Thx for reporting and the info.
I will read the firefox bug report at a later time to see if there is some workaround.
Best regards,
Robin

@monovertex,
In version 5.x the issue is fixed.  I made some changes to the inputmask to avoid the bug.
https://jsfiddle.net/o76xsg1m/3/
Best regards,
Robin

Indeed, that seems to work as intended now. Thanks a lot for the help!


Added emptyDirs for provisioning directories

Description

Added emptyDirs to provisioning directories.
Relevant issues/tickets

#501
Type of change

[x] Bug fix (non-breaking change which fixes an issue)

Checklist

[ ] This change requires a documentation update
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] I have added a test case that will be used to verify my changes
[ ] Verified independently on a cluster by reviewer

Verification steps

I think this functionality is missing in version 5 of the operator. Should I create a regression bug for this?

Sounds reasonable. We will check it out


EXC_BAD_ACCESS during internal realm query

Running Realm 2.1.1
Not at all sure what's going on here. Grabbed this crash off Fabric. It appears another thread is trying to query realm. There might be some nested behavior going on.
Two models involved, Activity and Account. An Activity is being created, which tells the account to update. At this point the activity is unmanaged, but the account is probably (?) managed already.
#4
Crashed: RLMRealm notification listener
EXC_BAD_ACCESS KERN_PROTECTION_FAILURE 0x00000001742d1410
 Raw Text
0	libswiftContacts.dylib
(Missing)
1	Realm
void realm::Columns<bool>::evaluate_internal<realm::Column<long long> >(unsigned long, realm::ValueBase&) + 752
2
Realm
realm::Compare<realm::Equal, bool, realm::Subexpr, realm::Subexpr>::find_first(unsigned long, unsigned long) const + 124
3	Realm
bool realm::ColumnNodeBase::match_callback<(realm::Action)5, realm::Column<long long> >(long long) + 116
4	Realm
bool realm::Array::find_optimized<realm::Equal, (realm::Action)7, 2ul, std::__1::__bind<std::__1::__mem_fn<bool (realm::ColumnNodeBase::*)(long long)>, realm::IntegerNodeBase<realm::Column<realm::util::Optional<long long> > >*, std::__1::placeholders::__ph<1>&> >(long long, unsigned long, unsigned long, unsigned long, realm::QueryState<long long>*, std::__1::__bind<std::__1::__mem_fn<bool (realm::ColumnNodeBase::*)(long long)>, realm::IntegerNodeBase<realm::Column<realm::util::Optional<long long> > >*, std::__1::placeholders::__ph<1>&>, bool, bool) const + 384
5	Realm
bool realm::Array::find<realm::Equal, (realm::Action)7, std::__1::__bind<std::__1::__mem_fn<bool (realm::ColumnNodeBase::*)(long long)>, realm::IntegerNodeBase<realm::Column<realm::util::Optional<long long> > >*, std::__1::placeholders::__ph<1>&> >(long long, unsigned long, unsigned long, unsigned long, realm::QueryState<long long>*, std::__1::__bind<std::__1::__mem_fn<bool (realm::ColumnNodeBase::*)(long long)>, realm::IntegerNodeBase<realm::Column<realm::util::Optional<long long> > >*, std::__1::placeholders::__ph<1>&>, bool, bool) const + 288
6	Realm
bool realm::IntegerNodeBase<realm::Column<realm::util::Optional<long long> > >::find_callback_specialization<realm::Equal, (realm::Action)5, (realm::DataType)0, false>(unsigned long, unsigned long) + 156
7	Realm
realm::IntegerNodeBase<realm::Column<realm::util::Optional<long long> > >::aggregate_local_impl(realm::QueryStateBase*, unsigned long, unsigned long, unsigned long, realm::SequentialGetterBase*, int) + 452
8	Realm
realm::Query::aggregate_internal(realm::Action, realm::DataType, bool, realm::ParentNode*, realm::QueryStateBase*, unsigned long, unsigned long, realm::SequentialGetterBase*) const + 312
9	Realm
realm::Query::find_all(realm::TableViewBase&, unsigned long, unsigned long, unsigned long) const + 432
10	Realm
realm::Query::find_all(unsigned long, unsigned long, unsigned long) + 108
11	Realm
realm::_impl::ResultsNotifier::run() + 72
12	Realm
realm::_impl::RealmCoordinator::run_async_notifiers() + 1180
13	Realm
realm::_impl::RealmCoordinator::on_change() + 24
14	Realm
realm::_impl::ExternalCommitHelper::listen() + 172
15	Realm
std::__1::__async_func<realm::_impl::ExternalCommitHelper::ExternalCommitHelper(realm::_impl::RealmCoordinator&)::$_0>::operator()() + 28
16	Realm
std::__1::__async_assoc_state<void, std::__1::__async_func<realm::_impl::ExternalCommitHelper::ExternalCommitHelper(realm::_impl::RealmCoordinator&)::$_0> >::__execute() + 28
17	Realm
std::__1::__thread_proxy<std::__1::tuple<void (std::__1::__async_assoc_state<void, std::__1::__async_func<realm::_impl::ExternalCommitHelper::ExternalCommitHelper(realm::_impl::RealmCoordinator&)::$_0> >::*)(), std::__1::__async_assoc_state<void, std::__1::__async_func<realm::_impl::ExternalCommitHelper::ExternalCommitHelper(realm::_impl::RealmCoordinator&)::$_0> >*> >(void*, void*) + 84
18	libsystem_pthread.dylib
_pthread_body + 240
19	libsystem_pthread.dylib
_pthread_body + 282
20
libsystem_pthread.dylib
thread_start + 4

#12
com.apple.root.default-qos
 Raw Text
0
Realm
(anonymous namespace)::is_nsnull(objc_object*) + 84
1	Realm
void (anonymous namespace)::QueryBuilder::add_constraint<(anonymous namespace)::ColumnReference, objc_object* __strong>(RLMPropertyType, NSPredicateOperatorType, unsigned long, (anonymous namespace)::ColumnReference, objc_object* __strong) + 180
2	Realm
(anonymous namespace)::QueryBuilder::apply_value_expression(RLMObjectSchema*, NSString*, objc_object*, NSComparisonPredicate*) + 1996
3	Realm
(anonymous namespace)::QueryBuilder::apply_predicate(NSPredicate*, RLMObjectSchema*) + 2320
4	Realm
(anonymous namespace)::QueryBuilder::apply_predicate(NSPredicate*, RLMObjectSchema*) + 1520
5	Realm
RLMPredicateToQuery(NSPredicate*, RLMObjectSchema*, RLMSchema*, realm::Group&) + 144
6	Realm
-[RLMResults objectsWithPredicate:] + 156
7	Realm
-[RLMResults objectsWhere:args:] + 68
8
Realm
-[RLMResults objectsWhere:] + 36
<snip to protect interior code>

Feel free to ignore if this is gibberish. I have nothing reproducible at this time.

Hey @asjesset. Thank you for filing this issue. We will look into this problem further. It would be greatly appreciated if you would be able to share any source code or projects with this problem that we can also try to reproduce the problem with.

At this time we have not recreated and don't have any code to share :(. If it recreates and I can narrow it down I'll share a pared down example. Thanks for the interest!

Sounds good. :)

I'm going to close this ticket since it hasn't been touched for a while. If you have further questions please feel free to file new tickets against us. If you do create a repro case feel free to either file a new ticket or re-open this one.


Frontend Version do not match backend version! (1.19.0)

⚠ Please verify that this bug has NOT been raised before.

[X] I checked and didn't find similar issue

🛡 Security Policy

[X] I agree to have read this project Security Policy

Description
Hello,
I have a same error of this Issues : https://github.com/louislam/uptime-kuma/issues/2213
But i use the script : https://github.com/louislam/uptime-kuma/wiki/🆙-How-to-Update
I have this problem since version 1.18.1
👟 Reproduction steps
Use this script to reproduce :
cd /opt/uptime-kuma/
git fetch --all
git checkout 1.19.0 --force
npm install --omit=dev
npm run download-dist
pm2 restart uptime-kuma
👀 Expected behavior
Fronted version = 1.19.0
😓 Actual Behavior

🐻 Uptime-Kuma Version
1.19.0
💻 Operating System and Arch
Ubuntu 22.04
🌐 Browser
Google Chrome
🐋 Docker Version
No response
🟩 NodeJS Version
No response
📝 Relevant log output
Downloading dist
https://github.com/louislam/uptime-kuma/releases/download/1.19.0/dist.tar.gz
https://objects.githubusercontent.com/github-production-release-asset-2e65be/382496361/25e6ee16-d9b9-4c2d-ba9a-29316ff1f3e4?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20221223%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20221223T201821Z&X-Amz-Expires=300&X-Amz-Signature=c797efa8a235f83658d2e1bdddb4a7dfa163d83a8d4dfa65b9789f63bb941205&X-Amz-SignedHeaders=host&actor_id=0&key_id=0&repo_id=382496361&response-content-disposition=attachment%3B%20filename%3Ddist.tar.gz&response-content-type=application%2Foctet-stream
Extracting dist...
internal/fs/utils.js:332
    throw err;
    ^

Error: ENOTEMPTY: directory not empty, rename './dist' -> './dist-backup'
    at Object.renameSync (fs.js:798:3)
    at ClientRequest.<anonymous> (/opt/uptime-kuma/extra/download-dist.js:36:20)
    at Object.onceWrapper (events.js:520:26)
    at ClientRequest.emit (events.js:400:28)
    at HTTPParser.parserOnIncomingClient [as onIncoming] (_http_client.js:647:27)
    at HTTPParser.parserOnHeadersComplete (_http_common.js:127:17)
    at TLSSocket.socketOnData (_http_client.js:515:22)
    at TLSSocket.emit (events.js:400:28)
    at addChunk (internal/streams/readable.js:293:12)
    at readableAddChunk (internal/streams/readable.js:267:9) {

I have solved this problem to add to this script ;) :
rm -r dist-backup
mv dist dist-backup


Update Kong operator to v0.2.4

Continuing from https://github.com/operator-framework/community-operators/pull/1579
Updates to existing Operators

[x] Is your new CSV pointing to the previous version with the replaces property?
[x] Is your new CSV referenced in the appropriate channel defined in the package.yaml ?
[ ] Have you tested an update to your Operator when deployed via OLM?
[x] Is your submission signed?

Your submission should not

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

Operator Description must contain (in order)

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

Operator Metadata should contain

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

Onward yet again! https://github.com/operator-framework/community-operators/pull/1604


[MWPW-148140] Adjust table strikethrough pricing

This tweaks the font size for strikethrough pricing inside table headers.
Resolves: MWPW-148140
Test URLs:

Before: https://main--milo--overmyheadandbody.hlx.page/drafts/ramuntea/table-tiger-team-kyung-overhaul?martech-off&georouting=off
After: https://table-strikethrough-font--milo--overmyheadandbody.hlx.page/drafts/ramuntea/table-tiger-team-kyung-overhaul?martech-off&georouting=off

FYI, PSI checks are failing due to the fact that the "parent" feature branch, table-review, hasn't been merged in yet. That branch contains enhancements that improve the LH scores. I will adapt the links to take this into account.


[Enhancement] Allow rounded corners for square image in table and infolist

[x] Changes have been thoroughly tested to not break existing functionality.
[x] New functionality has been documented or existing documentation has been updated to reflect changes.
[x] Visual changes are explained in the PR description using a screenshot/recording of before and after.

before:

after:

I think this looks better and fits with the overall rounded-corner style of Filament. Nothing breaks, completely backwards-compatible, just a small change for better visual styling.

This is great @josefbehr but I noticed you have a typo in the class name 'rouneded-xl'.
I think 'rounded-xl' is too much for repeated images in a list/table, I would prefer just rounded.

Thanks for the PR, @josefbehr.
I do see the use case.
However, the rounding is something you'd probably want to apply application-wide.
I prefer not to introduce an API for this, and suggest adding custom CSS to control the square image rounding.
Potentially in a future Filament version we could ship a slightly rounded square image by default (to make it match the color column for example).
Happy to do that already if @danharrin thinks that's not a breaking change UI-wise.


operator gitlab-operator-kubernetes (0.17.1)

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

[ ] Are you familiar with our contribution guidelines?
[ ] Have you packaged and deployed your Operator for Operator Framework?

[ ] Have you tested your Operator in all supported installation modes?
[ ] Have you considered whether you want to use semantic versioning order?
[ ] Is your submission signed?
[ ] Is operator icon set?

Updates to existing Operators

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

Your submission should not

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

Operator Description must contain (in order)

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

Operator Metadata should contain

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

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

Error:
TASK [parse_operator_bundle : Determine and set fact for operator specific information - name, pod name, container name and capabilities] ***
fatal: [localhost]: FAILED! =>
  msg: |-
    The task includes an option with an undefined variable. The error was: list object has no element 0

    The error appears to be in '/playbooks/upstream/roles/parse_operator_bundle/tasks/main.yml': line 121, column 9, but may
    be elsewhere in the file depending on the exact syntax problem.

    The offending line appears to be:

          - name: "Determine and set fact for operator specific information - name, pod name, container name and capabilities"
            ^ here

/retest

/approve

@gl-distribution-oc the PR is malformed. Multiple manifest items are missing.
Follow-up: https://gitlab.com/gitlab-org/cloud-native/gitlab-operator/-/issues/1086

/merge possible

/merge possible

/approve

/merge possible


Implement a way to manage volume on client

Possible also pauze / start , maybe even skip.

Color customizable


Consider supporting barrier=log

Right now barrier=log node  within way (or standalone way) would be with generic "Barrier" description
https://taginfo.openstreetmap.org/tags/barrier=log - usage is relatively low, just a bit more 4000 nodes and 1500 ways so may be too low to bother with it
But it makes sense, is documented. It would make existing data more clear to mappers using iD so may be worth handling?

https://github.com/openstreetmap/id-tagging-schema/blob/master/data/presets/barrier/_log.json - is now implemented!


feat(dart): add local storage persistence

Summary

Added local persistence to the token storage class
Added global static initialize method

Testing

Added 6 unit tests that cover all of the TokenStorage class's functionality

@simeng-li are there any other outstanding features that need to be built to make the dart sdk complete? I have taken a look at the LogtoWebview and it is kind of slow and just does not feel right. Maybe I could try to work on that next.

@simeng-li are there any other outstanding features that need to be built to make the dart sdk complete? I have taken a look at the LogtoWebview and it is kind of slow and just does not feel right. Maybe I could try to work on that next.

Absolutely. That would be great. I did spend a lot of time trying to figure out a proper way to integrate the sign-in flow with the in app webview on flutter and end up with the current approach. Haven't tested it on Android as well.  Please feel free to refactor.  Thanks again for all the help.
I'll finish up some of the work left

update the access token storage to map that can support resource-based token storage
add the getAccessToken/getTokenByRefreshToken method the the logtoClient class
add a getUserInfo endpoint

That would be pretty much everything left functionally, and with some documentation and publish works.

@simeng-li Okay, I think the best approach would be to let you work on the remaining client methods, because you know how they should be implemented. I'll try to figure out a better way to handle the sign in flow.


Send configuration server host:port as part of reload config message

In case of using mesosDNS, namenode is DNS resolvable hostname

This PR addresses some of the problems mentioned in https://github.com/mesosphere/hdfs/issues/245

Please note that this repository is now deprecated.  See this issue for a more detailed explanation.


Replaces initFlowFile exception

Proposed Changes
Introduces new exception InvalidFlowFile for invalid flow files. Previously we were using InvalidInitFlowFile
Testing
No need.
Issues Fixed
Incorrect error message for invalid flows

What @Leland-Takamine mentioned - we need to update ErrorViewUtils or make this a MaestroException

Good catch. Added to handler.


Rendering discrepancies between forward_plus and gl_compatibility

Tested versions

Reproducible in Godot 4.2.1 and Godot 4.3 dev3

System information
Godot v4.2.1.stable.mono - Fedora Linux 38 (Workstation Edition) - X11 - Vulkan (Forward+) - dedicated NVIDIA GeForce RTX 3060 Laptop GPU () - 11th Gen Intel(R) Core(TM) i5-11400H @ 2.70GHz (12 Threads)
Issue description
ShaderMaterials are drawn differently on the gl_compatibility render backend compared to the forward_plus backend.
Forward+ colors are desaturated and washed out - this does not happen with the StandardMaterial3D.
The scene, the shader and the environment settings are kept simple to minimize the odds of it being a side effect of a feature unsupported on gl_compatibility.
The shader in question:
shader_type spatial;

uniform sampler2D main_texture;

void fragment() {
	ALBEDO = texture(main_texture, UV).rgb;
}

It happens regardless of the render_mode (I also checked unshaded and diffuse_toon).
Steps to reproduce

open the attached project
run the default scene
note colors of the displayed spheres
change the renderer to gl_compatibility
run the default scene and see that the sphere with a custom shader has much more saturated colors

Minimal reproduction project (MRP)
mrp.zip

This sounds related to SRGB

Hmmm, indeed, that does it.
Although, without it, the behavior is different between 4.2.1 and 4.3dev3 (the color is "washed out" differently). Is that intentional?

Different colors are expected between Forward+, Mobile and Compatibility due to how lighting is rendering in each method.

@Calandiel This is not a problem with the shader, here is a 3D Minimal reproduction project (MRP):
colorbug.zip

Results:
forward+ and mobile (Godot 4.2.1):

gl_compatibility (Godot 4.2.1):

forward+ and mobile (Godot 4.3-dev3):

gl_compatibility (Godot 4.3-dev3):

cc @Calinou

@Calinou wrt your last reply, I understand now where this behavior is coming from but I'd like to bring attention to the second point I raised in this issue (in retrospection maybe it should have been two issue :slightly_smiling_face: ).
That is, the behavior is different between 4.2.1 and 4.3dev3 (the color is "washed out" differently). Is that expected behavior between the two versions also?


Implement GET /api/v1/node/{id}/ API end-point

TODO:

Return information about declared node
If node is not declared or undeclared respond with HTTP404
id is account number or special value
if id is "self" return information about the node that was called
if id is "pv" return information about current pv
Use Node model to construct serializer

@dmugtasimov How to get a primary validator from blockchain?

@andbortnik use some stub method for now. I will implement it with PV scheduling.

@andbortnik I reviewed. Looks good.

@andbortnik you can use get_primary_validator() from https://github.com/thenewboston-developers/thenewboston-node/pull/246 now

@dmugtasimov Implemented PV part. Please review.

@andbortnik merged, thank you


New project using maskrcnn-benchmark: Multitask Universal Lesion Analysis Network (MULAN)

Intro to a new project using maskrcnn-benchmark
Hello! Please allow me to introduce our new project: Multitask Universal Lesion Analysis Network (MULAN). It can detect a variety of lesions in CT images, predict multiple tags (body part, type, attributes) for each lesion, and segment it as well. It will be very useful for clinicians and researchers of computer-aided diagnosis to analyze their medical images.
The code is here: MULAN
We adapted and improved maskrcnn-benchmark. Thank you maskrcnn-benchmark developers for this excellent project!
Can you add our project to the readme file of maskrcnn-benchmark, in the section "Projects using maskrcnn-benchmark"? I believe many researchers will be interested in it. Thank you!

Hi,
Sorry for the delay in replying.
Can you send a PR to maskrcnn-benchmark adding your project in the "Projects using maskrcnn-benchmark" section?

Fixed via https://github.com/facebookresearch/maskrcnn-benchmark/pull/1160


Problem with loading plugin from command line when the path contains non-Latin characters on Windows

D:\Днскрипт>dnscrypt-proxy.exe --resolver-name=fvz-anyone --plugin=libdcplugin_example_cache.dll --local-address=<IP_ADDRESS>:53 --resolvers-list="D:\Днскрипт\dnscrypt-resolvers.csv"

12/30/16 00:43:07 [INFO] - [fvz-anyone] does not support DNS Security Extensions

12/30/16 00:23:07 [INFO] + Namecoin domains can be resolved
12/30/16 00:23:07 [INFO] + Provider supposedly doesn't keep logs
12/30/16 00:23:07 [NOTICE] Starting dnscrypt-proxy 1.9.0
12/30/16 00:23:07 [INFO] Loading plugin [D:\╨Ф╨╜╤Б╨║╤А╨╕╨┐╤В\libdcplugin_example_cache.dll]
12/30/16 00:23:07 [ERROR] Unable to load [D:\╨Ф╨╜╤Б╨║╤А╨╕╨┐╤В\libdcplugin_example_cache.dll]: [═х эрщфхэ єърчрээ√щ ьюфєы№.]
12/30/16 00:23:07 [ERROR] Unable to load plugins

Providing path to plugin as full path with quotes (like you used for the resolvers list) helps?

The quotes have been added to the example config file.
Thanks!


oxPush2 should send imfromation about device on enrollement

In oxPush we gather next information about user mobile device:
var deployment_entry = {
device_uuid : req.body.device_uuid,
device_type : req.body.device_type,
device_name : req.body.device_name,
os_name : req.body.os_name,
os_version : req.body.os_version,
approve_time : Date.now(),
approve_ip : req.ip,
};

Seems works for both platforms

It's worked fine


Missing Method Exception using IdentityServer4.EntityFramework 1.0.0-rc4

I upgraded to IdentityServer4 1.0.0-rc4 and installed IdentityServer4.EntityFramework 1.0.0-rc4 also into my application yesterday. I just got to running it this morning and I'm getting this unhandled exception when I attempt to connect to the discovery endpoint. My web application is an EmberJS application that is using the oidc-client-js library to authenticate the user. I'm using IdentityServer4.EntityFramework to manage scopes and clients, and ASP.NET Identity to manage users and roles.
Here's the exception output and stack traces:
crit: IdentityServer4.Hosting.IdentityServerMiddleware[0]
      Unhandled exception: System.MissingMethodException: Method not found: 'Microsoft.EntityFrameworkCore.Query.IIncludableQueryable`2<!!0,!!2> Microsoft.EntityFrameworkCore.EntityFrameworkQueryableExtensions.ThenInclude(Microsoft.EntityFrameworkCore.Query.IIncludableQueryable`2<!!0,System.Collections.Generic.ICollection`1<!!1>>, System.Linq.Expressions.Expression`1<System.Func`2<!!1,!!2>>)'.
         at IdentityServer4.EntityFramework.Stores.ResourceStore.GetAllResources()
         at IdentityServer4.Stores.IResourceStoreExtensions.<GetAllEnabledResourcesAsync>d__2.MoveNext()
      --- End of stack trace from previous location where exception was thrown ---
         at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
         at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
         at IdentityServer4.Endpoints.DiscoveryEndpoint.<ExecuteDiscoDocAsync>d__9.MoveNext()
      --- End of stack trace from previous location where exception was thrown ---
         at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
         at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
         at IdentityServer4.Hosting.IdentityServerMiddleware.<Invoke>d__3.MoveNext()
fail: Microsoft.AspNetCore.Diagnostics.ExceptionHandlerMiddleware[0]
      An unhandled exception has occurred: Method not found: 'Microsoft.EntityFrameworkCore.Query.IIncludableQueryable`2<!!0,!!2> Microsoft.EntityFrameworkCore.EntityFrameworkQueryableExtensions.ThenInclude(Microsoft.EntityFrameworkCore.Query.IIncludableQueryable`2<!!0,System.Collections.Generic.ICollection`1<!!1>>, System.Linq.Expressions.Expression`1<System.Func`2<!!1,!!2>>)'.
System.MissingMethodException: Method not found: 'Microsoft.EntityFrameworkCore.Query.IIncludableQueryable`2<!!0,!!2> Microsoft.EntityFrameworkCore.EntityFrameworkQueryableExtensions.ThenInclude(Microsoft.EntityFrameworkCore.Query.IIncludableQueryable`2<!!0,System.Collections.Generic.ICollection`1<!!1>>, System.Linq.Expressions.Expression`1<System.Func`2<!!1,!!2>>)'.
   at IdentityServer4.EntityFramework.Stores.ResourceStore.GetAllResources()
   at IdentityServer4.Stores.IResourceStoreExtensions.<GetAllEnabledResourcesAsync>d__2.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at IdentityServer4.Endpoints.DiscoveryEndpoint.<ExecuteDiscoDocAsync>d__9.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at IdentityServer4.Hosting.IdentityServerMiddleware.<Invoke>d__3.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at IdentityServer4.Hosting.FederatedSignOutMiddleware.<Invoke>d__6.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at IdentityServer4.Hosting.AuthenticationMiddleware.<Invoke>d__2.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Cors.Infrastructure.CorsMiddleware.<Invoke>d__7.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at IdentityServer4.Hosting.BaseUrlMiddleware.<Invoke>d__2.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware`1.<Invoke>d__18.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware`1.<Invoke>d__18.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware`1.<Invoke>d__18.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware`1.<Invoke>d__18.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware`1.<Invoke>d__18.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware`1.<Invoke>d__18.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware`1.<Invoke>d__18.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware`1.<Invoke>d__18.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.AspNetCore.Diagnostics.ExceptionHandlerMiddleware.<Invoke>d__6.MoveNext()

I attached the complete log file from my run.
Any ideas as to what I can do to resolve this?
Someone else is reporting the same issue on StackOverflow: http://stackoverflow.com/questions/40936310/identity-server-4-aspnet-identity-missing-method
log.txt

Looks like you're using .NET Core 1.1. See #38

Yes. Understood. Thanks for the fast response. I close this issue.


Feat/generate jsonschema

Closes #185

Codecov Report

Merging #186 (7ae62ed) into main (c1ded20) will decrease coverage by 0.23%.
The diff coverage is 6.25%.

@@            Coverage Diff             @@
##             main     #186      +/-   ##
==========================================
- Coverage   50.67%   50.44%   -0.24%
==========================================
  Files          56       58       +2
  Lines        1920     1929       +9
==========================================
  Hits          973      973
- Misses        947      956       +9

Impacted Files
Coverage Δ

app/src/commands/apply.rs
0.00% <ø> (ø)

app/src/commands/version.rs
0.00% <ø> (ø)

app/src/config/mod.rs
0.00% <0.00%> (ø)

app/src/main.rs
0.00% <ø> (ø)

jsonschemagen/src/main.rs
0.00% <0.00%> (ø)

lib/src/actions/command/run.rs
23.07% <ø> (ø)

lib/src/actions/directory/copy.rs
33.33% <ø> (ø)

lib/src/actions/directory/create.rs
53.33% <ø> (ø)

lib/src/actions/directory/mod.rs
0.00% <ø> (ø)

lib/src/actions/file/copy.rs
14.51% <ø> (ø)

... and 47 more

Continue to review full report at Codecov.

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


v1.33.0 RAM requirements check seems too aggressive

After upgrading from v1.32.0 to v1.33.0 service fails to start claiming there is not enough RAM.
Using the static binary on Debian 12.
Mar 15 12:55:42 rel bgpalerter-linux-x64[1827318]: /snapshot/BGPalerter/dist/index.js:107
Mar 15 12:55:42 rel bgpalerter-linux-x64[1827318]:       throw new Error("You need 4GB or RAM to run BGPalerter");
Mar 15 12:55:42 rel bgpalerter-linux-x64[1827318]:       ^
Mar 15 12:55:42 rel bgpalerter-linux-x64[1827318]: Error: You need 4GB or RAM to run BGPalerter

v1.32.0 ran perfectly on this instance for months. With v1.33.0 being less memory intensive there should be even less of an issue.
Should this not run ?
rel:/opt/bgpalerter# free -mt
               total        used        free      shared  buff/cache   available
Mem:            3823         671        2080           6        1071        2867
Swap:           4095           0        4095
Total:          7919         671        6176

Hi @mfld-pub,
I understand your concern. However, the amount of memory is affected by various factors, both related to what and when you are monitoring (e.g., in a moment where there is a great amount of BGP updates, like an instability). In the past several users reported crashes due to memory. I decided to set a default safe threshold for everybody instead of opening the door to the possibility that BGPalerter crashes in the moment you need it the most. The memory requirement is for the entire OS, not for the process (where you are running other processes in parallel as well). Overall, the requirement for the VM is contained for the type of service offered.


Frontend functionality fixes

### Tasks
- [x] 403 page triggers
- [x] Listview cleanup
- [x] delegate more to layout
- [ ] ugly code removal

done


improve make performance

Make appears slow to start, and per-target execution is slow. Speed this up.

ill defined and no longer evident now that configure is separate. closing.


EdgeVPN environment variables are incorrectly validated

Kairos version:
quay.io/kairos/debian:bookworm-standard-amd64-generic-v3.0.4-k3sv1.29.3-k3s1
Describe the bug
The generated json schema by kairos validates /p2p/vpn/env as an array while it should be an object.
To Reproduce
#cloud-config
users:
  - name: kairos
p2p:
  vpn:
    env:
      DHCP: "true"

Using - DHCP: "true" or any other format removes the error, but as it's not properly parsed in the code it causes kairos to not work at all.
Expected behavior
A warning/error isn't produced and the schema should be valid.

ok this is now part of kairos-agent 2.9.1, just need to bump on master and produce a release with it


'Sticky' is deprecated.

I'm submitting a ...

[x] bug report
[ ] feature request
[ ] support request

If you're reporting a bug, please provide a minimal demonstration of the problem

bug report
import Sticky fail, "'Sticky' is deprecated."
import { StickyContainer, Sticky } from 'react-sticky';
"react-sticky": {
      "version": "6.0.3",
      "resolved": "https://registry.npm.taobao.org/react-sticky/download/react-sticky-6.0.3.tgz",
      "integrity": "sha1-ehi2Q+GGPaET1/cDYRjSp12ezeQ=",
      "requires": {
        "prop-types": "^15.5.8",
        "raf": "^3.3.0"
      }
    }

Check README, the owner said this project is "No longer actively maintained"


Curve DCA: ContractLogicError: execution reverted: wrong count

Sentry Issue: TRADING-BOTS-3Y
ContractLogicError: execution reverted: wrong count
(9 additional frame(s) were not displayed)
...
  File "uvloop/loop.pyx", line 1517, in uvloop.loop.Loop.run_until_complete
    return future.result()
  File "bot_execute.py", line 365, in main
  File "bot_execute.py", line 296, in curve_bot
    deposits.append({"deposit_id": int(deposit_id), "remaining_count": int(remaining_countlist[i]), "amount_out_min": str(int(int(amount_out_min[i]) * (DENOMINATOR - SLIPPAGE) / DENOMINATOR))})
  File "cytoolz/functoolz.pyx", line 666, in cytoolz.functoolz.pipe
    return c_pipe(data, funcs)
  File "cytoolz/functoolz.pyx", line 641, in cytoolz.functoolz.c_pipe
    data = func(data)

This is coming from an old bot


Codecov

I forgot to actually run coverage. Whoops.

Codecov Report

Merging #2 (22994b7) into master (58ba572) will increase coverage by 100.00%.
The diff coverage is n/a.

@@              Coverage Diff              @@
##           master        #2        +/-   ##
=============================================
+ Coverage        0   100.00%   +100.00%
=============================================
  Files           0         4         +4
  Lines           0        56        +56
  Branches        0        10        +10
=============================================
+ Hits            0        56        +56

Impacted Files
Coverage Δ

src/cli.ts
100.00% <0.00%> (ø)

src/coverage.ts
100.00% <0.00%> (ø)

src/badge.ts
100.00% <0.00%> (ø)

src/main.ts
100.00% <0.00%> (ø)

Continue to review full report at Codecov.

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


Crashing

Keeps crashing on me when I try to run it

same here, when bot is lunched, it will download all dependencies, the Bot open browser and crash when trying to login to Instagram.

so what do i need to do to resolve this


Restrict Gallery to phone-sized screens

See https://github.com/flutter/flutter/issues/5570

@sethladd

lgtm with small note

lgtm


iOS 8 Notification Permission Denied

Does anyone know what the intended flow is if notification permissions are denied when the app is initially opened?
I'm using the tokenHandler to subscribe the device to a topic in Amazon SNS. Once the notification permissions have been denied by the user - even toggling them back on in the notification settings won't cause the device to be added in SNS.
I'm unsure if the register() method isn't called, or the tokenHandler doesn't get fired - either way, it doesn't appear to work.
Is this expected behaviour?

:+1:
This can't be expected behaviour. This plugin should either do something with the tokenHandler (maybe fire it with no token) OR fire the error callback.

+1 This way i cant see if user is enabled push or not

+1 im looking for answer


Allowing models plots in dimension > 3 using PCA after model creation

It can be a nice feature.

it is added in v0.6.3 which is soon available.


Users need to know the costs of permits in each boundary (if it's different)

Oxfordshire has different costs of permits for each boundary.
This probably needs a space for free text explanation.

@EUzkuraityte @sanjaypoyzer wouldn't this be determined by the postcode checker? We could add a line to the 'Check boundary' page to say the following IF prices differ per boundary for that council:

The cost of your permit will depend on the parking zone you'd like to park in.

Ah yes, I should have said with this - Oxfordshire have said they can't lookup their boundaries. I think this needs to be looked into though, as having this as a manual lookup that the user needs to do would not be good at all. cc @EUzkuraityte

@sanjaypoyzer @EUzkuraityte hmmm. do they not know their parking zone boundaries by postcode? how do they determine what to charge people? is it done visually e.g. with boundaries drawn on maps? if so can we provide high res jpegs of the maps (or is that what you mean by manual look up..) Agree not ideal. A list of postcodes and what boundaries they are in would be better.

@lizziebruce @sanjaypoyzer I know bucks are in a similar position, they don't know their boundaries but are looking into getting this information. I agree with Lizzie, post code lookup should be able to provide this information

See #313 Councils with parking zones will need to link to a page with a map image showing the zones and detailing prices per zone.

@lizziebruce from what I've seen, council's don't have maps that display cost information (see #259  for some parking zone maps)
Our prototype assumes a single price across all parking zones. I'm happy to keep it as is and assume that where variations exist, post code lookup would inform the price displayed to the user in the subsequent pages. Would you agree that this is sufficient or do you think we should have pricing information displayed elsewhere as well so that it is accessible to the user in another format?

@EUzkuraityte if the postcode look up can inform the price of the permit that would be great. But we'd still need to supply a link to a map with different zones so people can see where the boundaries of where they can park with their permit are.
It doesn't matter if the map itself doesn't detail the price but we need to show the area and supply a link to the prices per zone boundary. Ideally embedding map and price breakdown on one page.

@lizziebruce agreed, sounds good to me! I like what Oxford have, it shows parking zones on a map and at the bottom of the page there is an explanation for each of the parking zones. Maybe we could have something similar for residential parking zones only with the added pricing information?
Also, would you know how maps are viewed from accessibility point of view? are they recommended on mobile devices and tablets?

@EUzkuraityte @sanjaypoyzer that's a good point. I think we would need to make sure there's copy saying zone A permits cost £X, zone B permits cost £Y etc. PDF maps wouldn't work well on mobile or tablet but html versions would be fine? Perhaps Sanjay and I can look at this some more.

@lizziebruce sounds good to me, please let me know if you need anything further from me and let's have a catch up once you and Sanjay had a chance to discuss

Assigning @lizziebruce to this as She mentioned in this morning's updated she'll be working on 'the parking boundary maps for the where I can park issue' and this issue is related.

Following UR we'll be iterating on the boundary map and also looking at alternatives like http://umap.fluv.io/ and possibly https://carto.com/ which is free to use for public data.

Adding findings from UR

@EUzkuraityte @sanjaypoyzer to make this work councils would need a dataset of postcodes per parking boundary to shade in the parking zones effectively. The service would also need a postcode picker to work intelligently with the shaded maps, to display the right part for user's postcode...
Without shading, here's how the map zoomed to postcode areas displays on Google, Umap and Carto – User would zoom out to see wider area of parking boundary.
Google

Umap

Carto

OpenStreetMap
I also looked at OpenStreetMap but it wasn't very good at locating the postcode...

Currently on prototype
The hand-shaded Google map but now with with the user's postcode (manually) pinpointed:

We've gone with Carto. Clear and simple, no distracting side panel and zoom controls more obvious in top left than Google's bottom right. Can also choose shading colour, allowing council branding to be incorporated.

NB to make this work in practice, councils would need 1. a dataset of postcodes/longitudes&latitudes per parking boundary to shade in the parking zones efficiently. They'd also need 2. a postcode picker to work intelligently with the shaded maps, to display a pin and the right zoomed bit for user's postcode.

Hey @sanjaypoyzer the map's still disappeared. Will we be able to get this back for Tuesday's testing? Maybe just put a jpeg in for the testing?

Yep, I've been working on this, will get it live this afternoon.
On Fri, 7 Jul 2017, 11:46 Lizzie Bruce<EMAIL_ADDRESS>wrote:

Hey @sanjaypoyzer https://github.com/sanjaypoyzer the map's still
disappeared. Will we be able to get this back for Tuesday's testing? Maybe
just put a jpeg in for the testing?
[image: screen shot 2017-07-07 at 11 44 25]
https://user-images.githubusercontent.com/27814324/27954882-e1132388-6309-11e7-8f2d-a98705f652fa.png
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/alphagov/verify-local-patterns/issues/262#issuecomment-313649595,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AD6qy7jWYeFfYAoVY3DJ0QbHWiwasRqXks5sLgyMgaJpZM4MqVxr
.

--
Sanjay Poyzer
Twitter: @sanjaypoyzer
Tel: +44 7895 123 673


⚠ Bofrost.fr has degraded performance

In 17aff4d, Bofrost.fr (https://www.bofrost.fr) experienced degraded performance:

HTTP code: 200
Response time: 1931 ms

Resolved: Bofrost.fr performance has improved in c556497 after 6 minutes.


Weather alert node?

Hello.  I was wondering if you could add a node to query the active weather alerts?

While I don't have a severe weather node, I did create a example Node-RED flow that shows severe weather alerts on a map.
https://github.com/johnwalicki/Node-RED-Severe-Weather-Alert-Map

That Node-RED flow calls the TWC alerts API (if necessary, several times) to retrieve all of the NWS severe weather alerts (by US state or by all USA). Then plots them on a map.

@jpoeppelman1  If you agree that example is useful, I'll close this ticket?

Thanks John.  It's a great example, but I was really hoping for a
lightweight alert node to embed into my flow.
On Thu, Nov 26, 2020, 12:24 PM John Walicki<EMAIL_ADDRESS>wrote:

@jpoeppelman1 https://github.com/jpoeppelman1 If you agree that example
is useful, I'll close this ticket?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/johnwalicki/node-red-contrib-twc-weather/issues/4#issuecomment-734415154,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AILR7QQE6JW7NEY2KZRW4OTSR2FL3ANCNFSM4UDWVWZQ
.

I was purposeful in constructing the Node-RED-Severe-Weather-Alert-Map flow and Node-RED groups.  It would be relatively easy to grab the half dozen nodes in the center "Query Weather Alert Headline API" group and import them into your flow. That section is portable and has one entry point and one exit.  The top and bottom groups build the Node-RED dashboard/map.  You could ignore those.
https://raw.githubusercontent.com/johnwalicki/Node-RED-Severe-Weather-Alert-Map/master/screenshots/TWC-SevereWeatherAlerts-flow.png


feat: add support for filtering project and group listing by direct membership

Add support to filter the project and group list endpoints by using the query parameter direct_member.
When used, the group or project list will contain only items the current user is a direct member of.
/deploy

You can access the deployment of this PR at https://renku-ci-ds-394.dev.renku.ch

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

4 of 4 (100.0%)  changed or added relevant lines in 2 files are covered.
3 unchanged lines in 3 files lost coverage.
Overall coverage remained the same at 90.559%

Files with Coverage Reduction
New Missed Lines
%

components/renku_data_services/base_api/auth.py
1
89.61%

components/renku_data_services/crc/blueprints.py
1
92.88%

components/renku_data_services/users/db.py
1
94.14%

Totals

Change from base Build<PHONE_NUMBER>9:
0.0%

Covered Lines:
9304

Relevant Lines:
10274

💛  - Coveralls

@andre-code is this PR ready? If yes, please fix the PR title.

This change cannot be accepted as is, it hides groups and projects the user has the permission to view from the API.
Please add a query parameter to support this filtering of groups and projects. You can call it direct_member -> GET /api/data/projects?direct_member=1.

Sure, that makes sense. I've incorporated the suggestions, and it's ready for your review. I'll continue working on getting the tests to pass. Thanks for your review.

Tests for the updated endpoints are missing and should be added, e.g. test_get_groups_with_direct_membership and test_get_projects_with_direct_membership.

For example, here is a test for projects:
@pytest.mark.asyncio
async def test_get_projects_with_direct_membership(sanic_client, user_headers, member_1_headers, member_1_user) -> None:
    # Create a group
    namespace = "my-group"
    payload = {
        "name": "Group",
        "slug": namespace,
    }
    _, response = await sanic_client.post("/api/data/groups", headers=user_headers, json=payload)
    assert response.status_code == 201, response.text
    # Create some projects in the group
    payload = {
        "name": "Project 1",
        "namespace": namespace,
    }
    _, response = await sanic_client.post("/api/data/projects", headers=user_headers, json=payload)
    assert response.status_code == 201, response.text
    project_1 = response.json
    payload = {
        "name": "Project 2",
        "namespace": namespace,
    }
    _, response = await sanic_client.post("/api/data/projects", headers=user_headers, json=payload)
    assert response.status_code == 201, response.text
    project_2 = response.json
    # Add member_1 to the group
    roles = [{"id": member_1_user.id, "role": "editor"}]
    _, response = await sanic_client.patch(f"/api/data/groups/{namespace}/members", headers=user_headers, json=roles)
    assert response.status_code == 200, response.text
    # Add member_1 to Project 2
    roles = [{"id": member_1_user.id, "role": "editor"}]
    _, response = await sanic_client.patch(
        f"/api/data/projects/{project_2["id"]}/members", headers=user_headers, json=roles
    )
    assert response.status_code == 200, response.text

    parameters = {"direct_member": True}
    _, response = await sanic_client.get("/api/data/projects", headers=member_1_headers, params=parameters)

    assert response.status_code == 200, response.text
    projects = response.json
    assert len(projects) == 1
    project_ids = {p["id"] for p in projects}
    assert project_ids == {project_2["id"]}

    # Check that both projects can be seen without the filter
    _, response = await sanic_client.get("/api/data/projects", headers=member_1_headers)
    projects = response.json
    assert len(projects) == 2
    project_ids = {p["id"] for p in projects}
    assert project_ids == {project_1["id"], project_2["id"]}

Implementation seems to be OK for the most part.
Tests for the updated endpoints are missing and should be added, e.g. test_get_groups_with_direct_membership and test_get_projects_with_direct_membership.

Thanks @leafty   for providing an example of the test! I’ve included the one for groups, along with your other suggestions.

Tearing down the temporary RenkuLab deplyoment for this PR.


[SMALLFIX] Update the deploy module to respect the new alluxio-env.sh layout

Layout of alluxio-env.sh is updated after release 1.1, and in branch-1.3, the layout of alluxio-env.sh generated by alluxio bootstrapConf is updated again, this PR updates the deploy module to respect these new layouts, and keep backward compatibility for older layouts as well.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/11655/
Test PASSed.

Merged build finished. Test PASSed.

LGTM, Thanks for the fix.


use InvalidData rather than InvalidInput for errors

Mostly pedantry, but, for cases like trying to deserialize 92 as bool the correct error type is InvalidData. InvalidInput is for cases where arguments to the syscall are invalid -- that is, it's a bug in the code and a programming error, not a bug in the data.

taking this issue


ExtractFunction Fail when run clangd in command line

I'm trying to use clangd to make CI test better with C++ code. It has both clang-tidy and clang-format incorporated in clangd.
But when I use the clangd in the command line, using:

clangd --compile-commands-dir=/path --clang-tidy --enable-config --clang-tidy  --query-driver=/path/to/g++ --check=MyFoo.cxx

Apart from receiving expected error diagnoses such as clang-tidy and clang compiler diagnostics, I always get unexpect errors in the following
Part of Expect outputs
E[17:27:46.827] [-Wreturn-type] Line 107: non-void function 'GetStrategyHandleType' should return a value
E[17:27:46.827] [bugprone-macro-parentheses] Line 419: macro argument should be enclosed in parenthesesy

Part of Unexpect same outputs
E[17:27:52.356]     tweak: ExtractFunction ==> FAIL: Cannot extract break/continue without corresponding loop/switch statement.
E[17:27:52.396]     tweak: ExtractFunction ==> FAIL: Cannot extract break/continue without corresponding loop/switch statement.
...

I use it when open this file with a text editor (vscode-clangd) and it works pretty fine, which uses same clangd args and gives expect diagnostics.  I can confirm that clangd does find the .compile_commands from the project root file.
Does anyone know how I can correctly use clangd in command line? Also some hints about formatting in clangd is also very helpful.
Output of clangd --version:
clangd version 16.0.0 (https://github.com/llvm/llvm-project.git e52a41d0a2c1f880c0a99642ead09984448dd848)
Operating system:
linux

clangd --check tries to run refactorings at every source location in the file. I believe the main motivation for this is to catch crashes and debug assertions, as well as to provide ways to reproduce such things from the command line.
It's expected that not every refactoring can be performed at every source location, so some errors like this are normal. You should get the same error in the editor if you try to perform the refactoring at the same source location.

Also some hints about formatting in clangd is also very helpful.

I'm not sure what you mean by this, can you elaborate?

Also some hints about formatting in clangd is also very helpful.
Maybe I can achieve that using clang-format.

Actually, what I intended was to run clangd through the command line in a CI environment to achieve consistent diagnostic output with the editor, such as those from the clang frontend and clang-tidy (including warnings and errors). Using clangd --check can only gives diagnostic errors (which are refactor errors beyond the intended purpose).
Due to the limitations of our integration environment, I want to perform diagnostic tasks similar to those in the editor only by calling clangd from the command line. What options should I provide to clangd to achieve this requirement (even if it is just to include warning output in the --check result)?

Actually, what I intended was to run clangd through the command line in a CI environment to achieve consistent diagnostic output with the editor, such as those from the clang frontend and clang-tidy (including warnings and errors). Using clangd --check can only gives diagnostic errors (which are refactor errors beyond the intended purpose).
Due to the limitations of our integration environment, I want to perform diagnostic tasks similar to those in the editor only by calling clangd from the command line. What options should I provide to clangd to achieve this requirement (even if it is just to include diagnostic warning output in the --check result)?

For this use case, why not run clang and clang-tidy directly?

Our legacy system is compiled using g++, and the corresponding compile_command.json is quite large.
When running compilation checks (using either clang or g++) on a single file, I have had to correspond to the compilation command in order to find compiler-level diagnostics, while also increasing the CI time.
When using clang-tidy to check a single file, parsing the compile_command.json takes longer than running clangd --check, as measured by tests.
At the same time, from the results perspective, running clangd --check is quite fast, and provides both compiler and clang-tidy diagnostics. Following a consistent .clangd configuration allows our CI checks to be consistent with those performed by developers during the coding phase.

Ok, I see. So perhaps running clangd --check with the added option --check-locations=false would have the behaviour you're looking for?

Amazing！Output satisfied after i give clangd --check-locations=false option!  (Not found this option  in clangd --help so far)
E[17:43:11.207] [bugprone-macro-parentheses] Line 419: macro argument should be enclosed in parentheses
E[17:43:11.207] [bugprone-macro-parentheses] Line 419: macro argument should be enclosed in parentheses
E[17:43:11.207] [bugprone-macro-parentheses] Line 419: macro argument should be enclosed in parentheses
....
....
I[17:43:11.233] All checks completed, 3 errors

But it only shows the errors, how can it give me warnings like editor do?

Ok, I see. So perhaps running clangd --check with the added option --check-locations=false would have the behaviour you're looking for?

When I use clangd compiled from source code, the option --check-locations=false is recognized. However, when I use the binary clangd from the release, it tells me that this command doesn't exist.
clangd: Unknown command line argument '--check-locations=false'.  Try: '/tmp/clangd_15.0.6/bin/clangd --help'
clangd: Did you mean '--check-lines=false'?
---------after i put --check-lines=false------------
E[10:49:55.254] Invalid --check-lines specified. Use Begin-End format, e.g. 3-17

When I use clangd compiled from source code, the option --check-locations=false is recognized. However, when I use the binary clangd from the release, it tells me that this command doesn't exist.

It looks like --check-locations was added in clangd 16. There isn't a official clangd release for clangd 16 yet, though LLVM releases have been published, just days ago, at https://github.com/llvm/llvm-project/releases/tag/llvmorg-16.0.0. You can also use a weekly snapshot build from the clangd releases page if you prefer.

But it only shows the errors, how can it give me warnings like editor do?

Unfortunately this is not currently supported, but we have https://github.com/clangd/clangd/issues/1447 open for adding an option to show warnings in check mode. Perhaps you'd be interested in submitting a patch for it?

Thanks for your relpy, i'll try it

I found a workaround that adding WarningsAsErrors and '-WFlagto config file to enable  clang-tidy and compiler waring/errors in clangd--Checkmode, but the diagnostics ofunused include specified  byUnusedIncludes: Strictin.clangd` is missing.

How to solve this problem at the configuration level?


1.10 change in behavior

We use this in argo-rollouts code base and when we dependabot upgraded use to 1.10 we now have our unit tests failing with this error
interface conversion: interface {} is func(interface {}) float64, not func(string) float64

I have done a little bit of digging and it seems like this file got added which defines a set of functions. This seems to break our env which we have defined here I think because it is missing the type of functions we have passed in such as asFloat

I see. Will try to fix this bug.

@antonmedv awesome glad it is a bug, and thank you for the great library :D

@zachaller will try to fix it over the weekend.

I need little bit more info, as this code works as expected:

https://go.dev/play/p/ndMzR1MNFNA

package main

import (
	"fmt"
	"reflect"
	"strconv"

	"github.com/antonmedv/expr"
)

func main() {
	env := map[string]interface{}{
		"int8":    int8(1),
		"asFloat": asFloat,
	}
	code := `asFloat(int8)`

	program, err := expr.Compile(code, expr.Env(env))
	if err != nil {
		panic(err)
	}

	output, err := expr.Run(program, env)
	if err != nil {
		panic(err)
	}

	fmt.Printf("%T(%v)", output, output)
}

func asFloat(in interface{}) float64 {
	switch i := in.(type) {
	case float64:
		return i
	case float32:
		return float64(i)
	case int64:
		return float64(i)
	case int32:
		return float64(i)
	case int16:
		return float64(i)
	case int8:
		return float64(i)
	case int:
		return float64(i)
	case uint64:
		return float64(i)
	case uint32:
		return float64(i)
	case uint16:
		return float64(i)
	case uint8:
		return float64(i)
	case uint:
		return float64(i)
	case string:
		inAsFloat, err := strconv.ParseFloat(i, 64)
		if err == nil {
			return inAsFloat
		}
		panic(err)
	}
	panic(fmt.Sprintf("asFloat() not supported on %v %v", reflect.TypeOf(in), in))
}

Can you create an example with error? Thanks.

The error occurs when converting a string to float using asFloat: https://go.dev/play/p/6BG_QVOfdz6

Ok, thanks. This is a regression test:
	env := map[string]interface{}{
		"str":     "8",
		"asFloat": asFloat,
	}
	code := `asFloat(str)`

	program, err := expr.Compile(code, expr.Env(env))
	assert.NoError(t, err)

	out, err := expr.Run(program, env)
	assert.NoError(t, err)
	assert.Equal(t, float64(1), out)

Fixed in 9009d4da3de69a1e5dcbb284a9140129939de6f1  Will release a new version.

https://github.com/antonmedv/expr/releases/tag/v1.10.1

Awesome thank you for the super quick turnaround!

I have another one:
interface conversion: interface {} is core.classifyStringFunc, not func(string) bool (1:1)

However, I have:
type classifyStringFunc func(string) bool

I can work around the issue with
type classifyStringFunc = func(string) bool

Maybe do you prefer another issue?

Maybe do you prefer another issue?

Yes, please.


Publish resource: typecast error message (wish for more concrete guidance on the source of the error)

On publication, the log reports a typecast error and a fail (see screenshot)
Base reason: a value translation from a numeric value to a string (4 values) in one table (deployments/cameraHeight); removal of the translations gets rid of this error.
The error message is not very informative for tracing the source of the error. If typecasts (understandably) are an issue, would they be better intercepted at the place they occur (adding translations)?
screenshot:

Improvement for tableschema-java project to display meaningful error messages https://github.com/gbif/tableschema-java/commit/6593d4fca47bbeb7d9b93c0fe5523eb8c520274e

It's fine now. I've added some validation for the translations and also improved error messages.

Deployed to UAT