Determine UPS mode

This isn't so much of an issue as a question. I was wondering if the API returns whether the battery and inverter are in UPS mode or not?
I know it says UPS mode on the actual device when it's in that mode, but if it's possible to get that in Home Assistant, it would be quite useful for disabling certain automations, and issuing warnings about the battery and it's SOC.

My unit doesn't support UPS mode so I am unable to check this myself.  But the good news is that the underlying library that communicates with AlphaESS has both a standalone test as well as a Postman collection that can be used to interactively gather direct responses from the Alpha cloud.
If you are at all familiar with postman there is a Postman collection avaible at https://github.com/CharlesGillanders/alphaess/blob/main/AlphaESS.postman_collection.json I'd be very interested in the results of GetCustomUseESSSetting and GetLastPowerDataBySN when running in both UPS mode and not running in UPS mode.

Yeah, I've used postman before, but not in a while. Unfortunately for me though, my internet connection isn't powered by the UPS, so I can't query the API while in UPS mode. Having had a look at the data provided by @cpmueller, I was hopeful that
        "ups1": "1",
        "switch_on1": 0,
        "switch_off1": 0,

would be what we were after, but it unfortunately is the same in both the UPS on and UPS off files provided 😞 There was about three minutes between the two requests, which I hope would be enough time for this to be flagged, but maybe no?


[Design] Form Recognizer: Decide on Naming for Model LastModified field

Q: For management APIs "LastModified" is actually "LastUpdated" in the swagger
This was trying to be consistent with other SDKs
FOLLOW-UP: Investigate the correct nomenclature
See details in: https://github.com/Azure/azure-sdk/issues/962#issuecomment-625307676
Meeting chat from arch board review contains further details.
Goal:

Find a name that indicates model is immutable
Standardize across languages

Note that what the values represent is:

CreatedDateTime is when the training request was received. LastUpdatedDateTime is when the training completed. I like to have both values so I can see how long training took

According to that, we are going to do the following renamings:

CreatedOn -> RequestedOn
LastModified -> CompletedOn


Always clean up connection listeners

The Connection class always adds websocket listeners but only conditionally removes them on close. This results in event listener leakage. Instead, we should always remove these listeners when the Connection is closed.

I'm getting a similar message, is it because of this?

Yes! That's the same warning message we were seeing.

hmm, not sure if this will fix the warning (as we will still add one listener per document), and I don't see how we can delete connections without matching this condition. I think the warning will only be fixed by https://github.com/ueberdosis/hocuspocus/pull/671 , but still happy to merge this :-) THX!


egui file manager is not comfortable to use

Does not retain bookmarks
Sometimes does not react to doubleclick to open folders. (could be because of weird file structure on linux & lutris (wine).

its so seldomly used i don't see the point of the issue, if you want to create an issue/pr with egui


chore: update forgetti  for fix  optimizeConditionalExpression lost d…

https://github.com/lxsmnsyc/forgetti/pull/34

Thanks for your contribution! I will release a new version ASAP.

<EMAIL_ADDRESS>is released.


About code release

Thanks for your great work! Will you release the code after CVPR's result or ASAP?

We will make the code publicly available once finished this project. Stay tuned.

We will make the code publicly available once finished this project. Stay tuned.

Modeling is excellent, looking forward to open source

Hi, do you have an updated release date? Looking forward to testing this!
Thanks

@lzrobots Hi! DO you have any new info about code release? And what dataset is used? Thank you!

@antithing  the code has released.

Thank you! Amazing work.


Prevent XSS via innerHTML

Using innerHTML makes the examples vulnerable to cross-site scripting. To demonstrate, in the current version of the chat room example, one can enter <img src='x' onerror='alert("xss!")'> as a message, and the (arbitrary) javascript will run for all users in the room.
This can be prevented by changing innerHTML to innerText in all instances, which this pull req does.

Thanks a lot @Dylan-JW!


Add a leading space on binary operator token trailing comments

Looking through our RWC results, I realized that we could be a bit better in how we emitted comments on binary expressions (from #16584), thanks to work done in #17557.

@rbuckton In all cases, both in our test suite and in our RWC suite, just having there be a space before the trailing comment of a binary operator instead of after always matches the original comment spacing. It's likely just because not many people write code like var a=/*comment*/ foo; or (2+/*comment*/2), but we don't preserve whitespace verbatim in many (any?) of these places anyway. This is just a much more common default.

You are correct. GitHub's diff didn't give enough apparent context and the + and >>>  looked like custom diff emit from one of our test artifacts. These do look correct. 👍


Datepicker jumps unexpectedly on small screens

Greetings!  Thank you kindly for putting together the nice datepicker.  An issue I've noticed:
the datepicker modal bounces around vertically in unexpected ways when the height of the screen is small.  I've attached some pictures to document the weirdness.  Would be happy to pitch in on a fix and am curious what your thoughts are!
Thank you!

Hey @griffinmyers, I think this is because of the way the tether library is configured to try to keep the datepicker on the screen as the user scrolls.  Maybe you can work around this by trying the solution here: https://github.com/Hacker0x01/react-datepicker/issues/470

thanks @rafeememon!  Sorry I couldn't get my search query quite right to find this on my own.


Created Config.cache_setting decorator

This decorator can be used to cache results of expensive calls.    Cache keys are stored in ~/.datmo/cache.json

moved this to branch speed-up on this repo. opening a new PR for that branch


Added header accessibilityRole prop to headings

Description
Added header accessibilityRole prop to headings throughout Gallery
Why
Resolves https://dev.azure.com/microsoft/OS/_workitems/edit/43361294
What
Added accessibilityRole={'header'} to all headings and sub-headings in Gallery example pages

A superstar follow-up would be to add this to the create-react app template as well for the heading(s) there.


does deepstream eliminate the need for a real-time database and/or websockets???

I'm new to coding, so please be detailed in your responses...
I'm very intrigued by this technology, and want to use it my next project, but first...
in a typical app, there are the following pieces:

the DB server
the web server app
the client app

how many of the 3 pieces above need to be real-time in order for my app to truly be 100% real-time (ignoring network latency obviously)?
do all 3 pieces need to be real-time? for example:
DB server: rethinkDB
web server: deepstreamIO
client app: socksJS or socket.io or websockets
this seems rather redundant for all 3 pieces to be real-time
can deepstreamIO make my app fully real-time without having to use rethinkDB? if using mongo instead of rethink, then i'm losing real-time on the DB side, but does deepstreamIO make up for that? and if yes, how?
does a deepsteamIO with rethinkDB stack make an app more inherently real-time than a deepstreamIO with mongo stack? and if yes, how so?
and what about real-time on the client app side of things? can deepstreamIO eliminate the need for websockets in my client app, so that all i need are javascript listeners/subscribers? (i'm assuming web sockets is still needed, but its abstracted away by deepstreamIO, correct???)
in other words, could i achieve full real-time capabilities with deepstreamIO alone, like so:
DB server: mongoDB (not real-time)
web server: deepstreamIO
client app: listeners

answered by @WolframHempel

deepstream consists of a server and a client, so there's no need for socket.io etc.
deepstream is not an HTTP server, so you'll need to serve your static assets (html, css, images etc) from something else
deepstream can be used as a realtime layer in front of any database. As long as clients and backend processes interact with the db trough deepstream, all realtime functionality stays intact
RethinkDB gives you queries with updating result sets, MongoDB doesn't. The rest is pretty much the same

please find more details at
https://deepstream.io/tutorials/guides/what-is-deepstream/


nsim_em: tests: fail to run tests/kernel/timer/timer_behavior

Describe the bug
Numerical conditions are not met: max_us <= max_us_bound. And the value of max_us=20000.000000, max_us_bound=1100.000000.
To Reproduce
Steps to reproduce the behavior:

source zephyr-env.sh
twister -p nsim_em -T tests/kernel/timer/timer_behavior/ -v
See error

Logs and console output
*** Booting Zephyr OS build zephyr-v3.1.0-4500-g202b2ff91fbc  ***^M
Running TESTSUITE timer_behavior^M
===================================================================^M
START - test_periodic_behavior^M
periodic timer behavior test^M
periodic timer samples gathered, calculating statistics^M
timer clock rate 5000000, kernel tick rate 100, expected period 1000 us, samples 10000, period 5000.000000 cycles^M
statistics samples 10000, rollovers 0, mean 19998.604380 us, variance 19475.604089 us, stddev 139.555023 us, min 6043.800000 us, max 20000.000000 us^M
statistics samples 10000, rollovers 0, mean 99993.021900 cycles, variance<PHONE_NUMBER>21 cycles, stddev 697.775146 cycles, min 30219 cycles, max 100000 cycles^M
timer start cycle 20320, end cycle 999950539, total time 199986043.800000, expected time 10000000.000000, difference 189986043.800000^M
test log 20000.000000 1100.000000^M
^M
    Assertion failed at WEST_TOPDIR/zephyr/tests/kernel/timer/timer_behavior/src/main.c:167: timer_behavior_test_periodic_behavior: (max_us <= max_us_bound is false)^M
Longest timer period too long (off by more than 10%)^M
 FAIL - test_periodic_behavior in 202.491 seconds^M
===================================================================^M
TESTSUITE timer_behavior failed.^M
^M
------ TESTSUITE SUMMARY START ------^M
^M
SUITE FAIL -   0.00% [timer_behavior]: pass = 0, fail = 1, skip = 0, total = 1 duration = 202.491 seconds^M
 - FAIL - [timer_behavior.test_periodic_behavior] duration = 202.491 seconds^M
^M
------ TESTSUITE SUMMARY END ------^M
^M
===================================================================^M
RunID: 8900688af049d75900a428f73091e678^M
PROJECT EXECUTION FAILED^M

Environment :
OS: Linux
Toolchain Zephyr SDK 0.15.0
Commit SHA or Version: 202b2ff91fbced27a325258fb49d1f27e2ff7566

@teburd  should this be disabled for this simulator?

If this is an emulated environment then yes, disable the test. The test does not work in simulated/emulated environments.

on acrn_ehl_crb, the test case also failed:
START - test_periodic_behavior
periodic timer behavior test
periodic timer samples gathered, calculating statistics
timer clock rate<PHONE_NUMBER>, kernel tick rate 10000, expected period 1000 us, samples 10000, period 1900000.000000 cycles
statistics samples 10000, rollovers 0, mean 999.994210 us, variance 52798.839798 us, stddev 229.779984 us, min 3.275263 us, max 23184.668947 us
statistics samples 10000, rollovers 0, mean 1899988.998100 cycles, variance<PHONE_NUMBER>69.693100 cycles, stddev<PHONE_NUMBER>00 cycles, min 6223 cycles, max 44050871 cycles
timer start cycle<PHONE_NUMBER>2, end cycle<PHONE_NUMBER>3, total time 9999942.095263, expected time 10000000.000000, difference -57.904737
Assertion failed at WEST_TOPDIR/zephyr/tests/kernel/timer/timer_behavior/src/main.c:164: timer_behavior_test_periodic_behavior: (min_us >= min_us_bound is false)
Shortest timer period too short (off by more than 10%)
FAIL - test_periodic_behavior in 0.963 seconds

For this test case, it failed when using HPET timer by default. But it failed when using APIC TSC timer: detailed in https://github.com/zephyrproject-rtos/zephyr/issues/49611


Checkbox not working in list with other elements

When added more HTML elements in the li, checkbox don't work. I think that can be accept others elements to allow better li views

            <input type="checkbox" class="">
            This works

            <input type="checkbox" class="">
            Don't work | Salt -
            <bold>$ 9.99</bold>

You must put your other tags after

            <input type="checkbox" class="">
            This works

            <input type="checkbox" class="">
            It should work :) | Salt -

            <bold>$ 9.99</bold>

Please, reopen this issue if it does not fix your problem.

lol
Man how I can contribute to docs of phonon? I'm from Brazil, I can extend docs and translate too

Thank you for your interest :)
I will inform you when the docs will be opened to the public for contribution.

Can you create a repo "Phonon Docs"? This is a simple method to allow me contribute with you. Maybe you can create a "organization" here on Github, see https://github.com/organizations/new


AppCenter CLI, Permission Denied error during installation.

I followed the documentation and installed Nodejs on my Ubuntu 18.04.03 based on How to Install Latest Node.js and NPM on Ubuntu with PPA.
I ran the installation command, however, I am getting this error:
hesam$ node -v
v10.16.3
hesam$ npm -v
6.9.0
hesam$ npm install -g appcenter-cli
npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none is installed. You must install peer dependencies yourself.

npm ERR! path ../lib/node_modules/appcenter-cli/bin/appcenter.js
npm ERR! code EACCES
npm ERR! errno -13
npm ERR! syscall symlink
npm ERR! Error: EACCES: permission denied, symlink '../lib/node_modules/appcenter-cli/bin/appcenter.js' -> '/usr/bin/appcenter'
npm ERR!  { [Error: EACCES: permission denied, symlink '../lib/node_modules/appcenter-cli/bin/appcenter.js' -> '/usr/bin/appcenter']
npm ERR!   cause:
npm ERR!    { Error: EACCES: permission denied, symlink '../lib/node_modules/appcenter-cli/bin/appcenter.js' -> '/usr/bin/appcenter'
npm ERR!      errno: -13,
npm ERR!      code: 'EACCES',
npm ERR!      syscall: 'symlink',
npm ERR!      path: '../lib/node_modules/appcenter-cli/bin/appcenter.js',
npm ERR!      dest: '/usr/bin/appcenter' },
npm ERR!   stack:
npm ERR!    'Error: EACCES: permission denied, symlink \'../lib/node_modules/appcenter-cli/bin/appcenter.js\' -> \'/usr/bin/appcenter\'',
npm ERR!   errno: -13,
npm ERR!   code: 'EACCES',
npm ERR!   syscall: 'symlink',
npm ERR!   path: '../lib/node_modules/appcenter-cli/bin/appcenter.js',
npm ERR!   dest: '/usr/bin/appcenter' }
npm ERR!
npm ERR! The operation was rejected by your operating system.
npm ERR! It is likely you do not have the permissions to access this file as the current user
npm ERR!
npm ERR! If you believe this might be a permissions issue, please double-check the
npm ERR! permissions of the file and its containing directories, or try running
npm ERR! the command again as root/Administrator (though this is not recommended).

npm ERR!

Seems like you've install node with sudo I presume from apt-get?
NOT RECOMMENDED: Running sudo npm install -g appcenter-cli would fix the issue.
RECOMMENDED: Reinstall node by using nvm

You are indeed right @dv-bv. Thanks for your recommendation. I installed NVM and then I installed AppCenter CLI successfully. Thanks again.
Ref: https://linuxize.com/post/how-to-install-node-js-on-ubuntu-18.04/


WIP: Redesign calendar widget

#13

Demo:

@adamhstewart @isapisa @jeanette-pelizzon ^^

@anvmn I think the colour for a selected date should change, but deferring to @jeanette-pelizzon

Can we make the dates all white or grey even before the year is selected? And round out the edges of the box - it's super harsh looking.
Date picked see below:

@jeanette-pelizzon like this?

Getting feedback on Wednesday for this and will report back with changes

@mariano-dagostino please review

Thanks @mariano-dagostino. I'll see about that.


Client Encryption: Adds code to support PartitionKey and Id encryption.

Description
This PR brings in necessary changes to support partition key and id field encryption which is currently not supported.
Type of change

[] New feature (non-breaking change which adds functionality)
[] This change requires a documentation update

            encryptionDiagnosticsContext.AddEncryptionDiagnosticsToResponseMessage(responseMessage);

If we are returning early, are we missing this call?

Refers to: Microsoft.Azure.Cosmos.Encryption/src/EncryptionContainer.cs:878 in 1c170d6. [](commit_id = 1c170d6bee0e496b292e7b3e1f1fddd06a9eed89, deletion_comment = False)

    private static async Task<JToken> SerializeAndEncryptValueAsync(

I am wondering whether the escaping should be done only in this and below method method where they can either take a bool flag saying shouldEscape / isEscaped, or maybe the property name and inside we compare it to id.

Refers to: Microsoft.Azure.Cosmos.Encryption/src/EncryptionProcessor.cs:289 in 1c170d6. [](commit_id = 1c170d6bee0e496b292e7b3e1f1fddd06a9eed89, deletion_comment = False)

maybe

Will explore if this is convenient or requires lot of refactoring.

maybe

Will explore if this is convenient or requires lot of refactoring.

Fixing it will help improve maintainability as compared to duplicating this code all over the place and ending up missing it on some future paths.

            encryptionDiagnosticsContext.AddEncryptionDiagnosticsToResponseMessage(responseMessage);

If we are returning early, are we missing this call? Should we instead just set a bool and not throw at L880?

Should not be an issue. It was added here because we throw an exception here resulting in missing AddEncryptionDiagnosticsToResponseMessage in the caller.

            encryptionDiagnosticsContext.AddEncryptionDiagnosticsToResponseMessage(responseMessage);

Yet to be addressed.

In reply to:<PHONE_NUMBER>

Refers to: Microsoft.Azure.Cosmos.Encryption/src/EncryptionContainer.cs:878 in 1c170d6. [](commit_id = 1c170d6bee0e496b292e7b3e1f1fddd06a9eed89, deletion_comment = False)

            encryptionDiagnosticsContext.AddEncryptionDiagnosticsToResponseMessage(responseMessage);

Yet to be addressed.
In reply to:<PHONE_NUMBER>
Refers to: Microsoft.Azure.Cosmos.Encryption/src/EncryptionContainer.cs:878 in 1c170d6. [](commit_id = 1c170d6, deletion_comment = False)

The reason why i call AddEncryptionDiagnosticsToResponseMessage is because we throw here. All the callers of this function call AddEncryptionDiagnosticsToResponseMessage


#243 When renaming an object, fill in current name

updated current name while renaming game object issue #243

https://github.com/JamesTKhan/Mundus/assets/85566851/eb5113dc-8870-4353-93c1-b72379bd1d34

I have also done the change to populate the GameObject's current name into the TextField can i push it here or create a new pull request

I have also done the change to populate the GameObject's current name into the TextField (as shown above) can i push it here or create a new pull request

Awesome, go ahead and push it to this PR

Sample Image of GameObject's current name populated into the TextField

Looks good, thanks!


Cannot install hyper-h2 on Ubuntu LTS

Doing some tests for mitmproxy, I noticed that h2 doesn't install on either Ubuntu 12.04 or 14.04 by default: https://gist.github.com/mhils/d97ca425c33df644722f
We currently recommend mitmproxy users to just pip install mitmproxy in order to get a somewhat recent release - which doesn't work anymore with h2 as a dependency.
I know the whole thing sucks, but how can we address it best?

Urgh, LTS releases. @dstufft, got any suggestions?

Are there any public statistics from pypi regarding the pip/setuptools version distribution?

@Lukasa I think I have an idea of how to fix this if @mhils is willing to test it out for me. I'll send a PR shortly.

We have two distinct issues here:

Ubuntu 12.04 - which picks up the source distribution by default - complains that 'extras_require' must be a dictionary
Ubuntu 14.04 - which picks up the wheel by default - complains that ~=3.1 is not a version spec.

I'll try and build a wheel with >=3.1, <4 and see if that fixes things for 14.04.

So #152 absolutely fixes the first item. The second item is a problem with LTS distributions doing fun things with pip and setuptools' vendored dependencies (and using ancient versions) that can't understand version syntax specified in PEPs that are a couple years old.
I strongly suspect not using the fancy ~= will fix problem two.

FWIW:

OS
pip
setuptools
wheel
~=
extras_require

Ubuntu 12.04
1.0
0.6
/
no
no

Ubuntu 14.04
1.5.4
3.3
0.24.0
no
(to be determined)

So I'm inclined to say anyone using anything older than pip 1.5 just shouldn't be supported. That version is both ancient enough and insecure enough to not be worth supporting.

#153 should address compatibility with 14.04. @dstufft, could we get some numbers on 12.04, before we drop support?

That's the top 32 things downloading from PyPI, null means we don't have that data available to us because of the version of the installer they used didn't include it in the information they send. The raw numbers are probably not the most important since it's over a few weeks, more important I'd suggest is to look at the relative magnitude of each number.

That sounds good enough - we'll just force those 12.04 users to upgrade pip, which they should do anyway. Thanks again everyone! :smiley:
refs mitmproxy/mitmproxy/pull/917


Why not publish the package?

Looking at your repo we saw that you didn't publish it on NPM, is there any motivation after that?
My question is why are we going to use it in our project, but because we don't have the package in npm we have to install it directly via git.

To add the github package registry to your project.
in your project .npmrc, add...
//npm.pkg.github.com/:_authToken={PERSONAL_ACCESS_TOKEN}
@socialcode-rob1:registry=https://npm.pkg.github.com

PERSONAL_ACCESS_TOKEN needs to be generated, see https://github.com/settings/apps


Parse area href for link

Missing valid tag that may have an href.
ref: https://www.w3schools.com/tags/att_href.asp

@brendonboshell great lib! I learned a lot from it


docs: List supported Python versions

Python 3.8 is due to reach its scheduled upstream end-of-life in October 2024.

In preparation for this, we're marking support for this version as deprecated. It's still available, but will be removed in a future version.

@sakoush: I was thinking about that. I did some brief testing, and had some dependency installation failures on Python 3.11.8. Happy to update it to say that it's "untested" or something like that.
wdyt?

@sakoush: I was thinking about that. I did some brief testing, and had some dependency installation failures on Python 3.11.8. Happy to update it to say that it's "untested" or something like that.
wdyt?

yes we need to reflect status and perhaps also add an issue to investigate why mlserver doesnt work on py3.11.

As far as I understand https://github.com/SeldonIO/MLServer/pull/1603 removed support for Python 3.8.
Because of
https://github.com/SeldonIO/MLServer/blob/775fa4f9d238f2e41c2aec282b25d5c819bfa09a/pyproject.toml#L46
it will not be able to use it with Python 3.8 so it is not deprecated but removed

@RafalSkolasinski: This PR was opened before that, so I'll update this now.

@RafalSkolasinski: Done! Thank you for the reminder. 🙏🏻


[1.12.2] Client-only crash upon scan in Scanner

Hey mcjty :)
Client crashes with java.lang.NullPointerException: Rendering screen exception when hitting "Scan" in the Scanner with a shape card inserted and set to 200x200x200
Crashdump: https://gist.github.com/DeadSix27/e530584ca16089a3d4f2347ade4bedb8

I will check it out

Btw it is a bed causing the crash

@McJty Strange, I have no special modded beds or so, ( I don't think so ), I think Quark used to mod them in 1.10 but since this is 1.12 there should be vanilla beds in all colors and thus no special beds?

Fixed next release. It is a 1.12 specific bug

@McJty Thank you :)


[BUG] fix: SVG Logo

Description
There is a bug in the navbar, The SVG logo is not properly placed.
Screenshots

same issue exists in footer also. make sure to check all components where the svg logo is used and fix those also. I think you just need to add a width to the svg component

same issue exists in footer also. make sure to check all components where the svg logo is used and fix those also. I think you just need to add a width to the svg component

Okay I am looking into it


Sized Box: Use a brush for the border

This allows for a richer appearance by using any valid brush for the border.

I'm not excited about the clone of the brush here (but it would've happened anyway further down).  You can' pass &border.brush in Xilem because there's no From<&Brush> for Brush in Peniko (and maybe there should be?).
I'm not sure that any API being Into<Color> makes all that much sense. There isn't a rich selection of types that convert to peniko::Color.


[Feat] Hover functionality on the cards of Facilities section

Description
In "Our Facilities" section, I would like to make the cards come forward and highlight them whenever the user hovers over the cards.
Screenshots

Checklist

[x] I have checked the existing issues
[X] I have read the Contributing Guidelines
[X] I'm a GSSoC'24-Extd contributor
[X] I am willing to work on this issue (optional)

@mdazfar2  I want to contribute to this project on this particular issue. Please assign it to me!

Hey @veepanshu-kasana,
We're currently following a first-come, first-served approach for assigning issues. If the initial assignee is unable to complete the task, we'll consider reassigning it.
I appreciate your enthusiasm for open source and your contributions. Keep up the great work! :)

@mdazfar2 feat(ui): enhance Card hover effects with smooth animations & gradients #1080


Increase test coverage

I see that the test coverage might not be where it should be, considering that bns is a core contract.

Yeah, you'll want to property-test the bejeezus out of this contract.

Over 199 tests have been written, all with state checking, all of them are passing

This can be resolved by #67.


Rapid prototyping/story-boarding with high level tools

Just been looking at https://github.com/rstudio/flexdashboard and it makes think about rapid prototyping. There is a spectrum of detail, including:

Sketching on Google Presentations/Excalidraw etc
Front end design tools like Figma and storybook (which looks amazing btw)
Rapid prototyping tools that require minimal code and time to get things started like flexdashboard (are there any others worth a shot?)
Deployment in production, perhaps using one of the frameworks in #8

There can be overlap between them but my current thinking is that it's worth having an intermediate stage between purely conceptual designs and production ready designs. Will document any storyboarding/design ideating here for reference and any pointers on that before I do (no imminent plans) welcome.

Example with a map: https://walkerke.shinyapps.io/neighborhood_diversity/
Note it's a bit laggy and not necessarily scalable or good at ingesting data, but good for a step after sketching and getting data and UI components visualised to tell a story quick.

Rapid prototyping system: https://json-editor.github.io/json-editor/


Add some tests to perform validation of the dsl_definitions section

Note that the tests have pre_requisite that are not defined yet and test assertion section will have to be updated when the tests are defined.

Replace InvalidType by ValueTypeMismatch
Change the target to describe the template.


Merge 'ThreeMammals:develop' into 'develop'

Let's update your repo with latest top-commits from head repository.
That will allow to perform rebase-operation for feature branches without merge-commits.
Please use Rebase and merge option.

Hi Bjarte!
Don't forget to Sync fork please? So, develop branch will be updated with top commits!
This operation is technically the same as merging this PR with Rebase option.


Pipeline reports mapped reads as 'NA' even tough viral genome aligning reads are present

Description of the bug
Hi there,
All samples analyzed should be positive for reads aligning with the virus. I have validated this by manual, pipeline independent alignment, and manual IGV inspection. As you can appreciated in the screenshot, the pipelines detects the viral reads only in 3 out of 10 samples. In 7/10 it just writes "NA". Inspecting the /variants/bowtie2/ subfolder I find that the alignment for the 7/10 samples does actually not happen, but the samples are rather omitted for some reason.
I also changed the minimum read threshold, but all 7/10 samples are above this threshold, as verified by manual inspection.
To further troubleshoot, I ran some of the "NA" samples independently, but no success.
Any help would be highly appreciated! Thank you.

Command used and terminal output
nextflow run nf-core/viralrecon -latest --input ./tumor_samples_set2.csv --platform illumina --skip_assembly --spades_mode meta --save_trimmed_fail --max_memory 400.GB --skip_markduplicates 0 --skip_snpeff --skip_bandage --max_cpus 20 --max_time 8h --protocol metagenomic --fasta ../reference/virus.fasta --skip_plasmidid --skip_nextclade --skip_pangolin --save_mpileup --skip_assembly_quast -profile cbe -bg -resume --outdir ./ --skip_kraken2

Relevant files
No response
System information
Workflow profile: cbe
Nextflow version: version 21.10.6, build 5660 (21-12-2021 16:55 UTC)

No idea why, but adding --skip_fastp solves the problem.


Fix scenario 9 (#5600)

Pull request opened by the merge tool on behalf of #5600

Merged in 2c18dcf9b7540496892163655c0966748da060cb


Potential logging function

Description
Add logging function with winston for better maintenance.

Function added in the commit: 41b80adb2c5413f555a044196c09c0039f9ce82d


Allow axes to go negative

This change preserves the linechart's behavior for data consisting of only positive values – the axes will still start at 0.  But for data with negative values, the axis will begin at the lowest negative value (see x-axis of image below).  What do you think?
I'm happy to add a test, but since the axes are not rendered by React, the ticks aren't found by the TestUtils methods.

Hey, thanks for this.  Yes, we do need to accommodate negative values.  Ideally, I was planning on creating something like Highchart's threshold, which allows you to either visualize negative values as dipping below the x axis, or to visualize them as you're doing here, by starting the origin of either axis with the least negative value instead of at 0.
But I'll go ahead and merge it and plan on adding a threshold type feature at a later time, since I wasn't even planning on addressing this until after 0.2.0.
Thanks again!

Makes sense.  Thank you!


Using custom HtmlEncoder in unit tests - Part 1

Issue - #2085
There are changes to rendering tests that are not included in this PR. Will send that out as part 2.
@Eilon @dougbu

:shipit:

:watch: for better encoding coverage in the test classes that are using just NullTestEncoder.

Updated.

the following classes do not test using CommonTestEncoder at all.  please fill these gaps.

AnchorTagHelperTest
FormTagHelperTest
TagHelperOutputExtensionsTest
ValidationMessageTagHelperTest

:watch:

@dougbu Not sure what scenario actually uses encoding in these helpers. I couldn't find any part of the code that uses with encoding directly. Could you provide some scenarios?

the following classes do not test using CommonTestEncoder at all. please fill these gaps.
AnchorTagHelperTest
FormTagHelperTest
TagHelperOutputExtensionsTest
ValidationMessageTagHelperTest

@ajaybhargavb the named tag helpers all get TagBuilder instances from DefaultHtmlGenerator.  they then at least call MergeAttributes.  so the basic thing is to ensure extra encoding does not occur.  for example, use the CommonTestEncoderinstead in tests that just checkoutput.Attributes(and see nothing is encoded).  or, in tests that look at the finalstring`, should see HTML encoding of the attribute values.
for TagHelperOutputExtensionsTest I recommend creating the TagBuilder instances with CommonTestEncoder as well.  won't get used but that is still testing the scenario.

:shipit:


Improve marshalling efficiency

For the sake of making init_voting_seesion function parameters fit, it is required to refactor marshalling format:
https://github.com/NilFoundation/crypto3-blueprint/blob/fc053b0a5f35c6878257caaa29495e375ba1675e/include/nil/crypto3/zk/components/voting/encrypted_input_voting.hpp#L48-L60
https://github.com/NilFoundation/vote-saver-protocol/blob/master/bin/cli/src/main.cpp#L267
https://github.com/NilFoundation/vote-saver-protocol/blob/master/bin/cli/src/main.cpp#L281

You can assign this to me

Solved by #11


Update scalatest to 3.0.6

Updates org.scalatest:scalatest from 3.0.1 to 3.0.6.
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention @scala-steward in the comments below.
Have a nice day!

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [{ groupId = "org.scalatest", artifactId = "scalatest" }]

Closing as OBE; on newer version.


Feature request: Nested modifier list in whitelist

I would very much like to configure this so that each mob type has a subset of modifiers available to them.  For example, cloaked spiders are okay, but cloaked creepers are not.  Is this feasible?

Not sure when it got added, but there does appear to be a way to blacklist abilities from specific mobs through a datapack.
https://github.com/HyperPigeon/Eldritch-Mobs/wiki/Blacklisting-abilities-from-being-used-by-specific-mobs

Added w/ rewrite


feat: Implement perf protocol

Implements https://github.com/libp2p/specs/pull/478

What are the next steps on this?  I'd like to make sure js-libp2p isn't getting left behind on the perf dashboarding.

What are the next steps on this? I'd like to make sure js-libp2p isn't getting left behind on the perf dashboarding.

Agreed @BigLep . I am going to refactor the PerfService to allow this to be configured the way configure our other optional services now following @achingbrain 's suggestion as well as incorporate @wemeetagain 's feedback and then that should return this PR to a ready state.

Thank you @maschad.

and then that should return this PR to a ready state.

I will then integrate it into https://github.com/libp2p/test-plans/pull/163/.

CI check failure is fixed by https://github.com/libp2p/js-libp2p/pull/1801

Since this is our first benchmark tests there isn't really a precedent, but do we want to run these types of tests in our regular PR workflow or would it be better suited to be run on the main branch ? cc @achingbrain @wemeetagain @MarcoPolo

What are you referring to with "these types of tests"? For https://github.com/libp2p/test-plans/pull/184 we plan to run it before every release for now.

What are you referring to with "these types of tests"? For libp2p/test-plans#184 we plan to run it before every release for now.

I was referring to  benchmark tests there (as opposed to our other types of tests such as unit or integration tests). But if the plan is to run it before every release then the answer to my question would be to run these post-merge on the main branch.

In the ideal world, this should run on every PR to highlight any perf regressions or improvements. It should fail CI if perf degrades by more than X% relative to the main branch.

Currently blocked by a huge refactor in https://github.com/libp2p/js-libp2p/pull/1833

In the ideal world, this should run on every PR to highlight any perf regressions or improvements. It should fail CI if perf degrades by more than X% relative to the main branch.

What do you think is an appropriate threshold? I currently have it 20% but that is subject to failure at times. Perhaps we should increase it to 30% ?

In the ideal world, this should run on every PR to highlight any perf regressions or improvements. It should fail CI if perf degrades by more than X% relative to the main branch.

On a high level, the custom benchmarking CI setup introduced in this pull request seems to reinvent what https://github.com/libp2p/test-plans/pull/184 already provides, namely an automated way to run performance benchmarks.
https://github.com/libp2p/test-plans/pull/184 currently has a couple of shortcomings, and can thus not fulfill the use-case needed in this pull request as is:

It uses somewhat expensive AWS instances (~2 Dollar per run), thus likely not suited to run on  though that can be variable.
It does not (yet) allow running tests for a single implementation only.

But what it does provide:

Provisioning of dedicated cloud instances, thus providing reproducible results.
A runner, building, running and reporting the results back.
A way to visualize the results https://observablehq.com/@mxinden-workspace/libp2p-performance-dashboard.

I am fine with the direction this pull request is taking, namely to implement a custom performance benchmarking tool for js-libp2p. Though long term, I would suggest to merge with what https://github.com/libp2p/test-plans/pull/184 started, i.e. for js-libp2p to call a workflow within libp2p/test-plans.
What are people's thought @maschad @MarcoPolo?

libp2p/test-plans#184 currently has a couple of shortcomings, and can thus not fulfill the use-case needed in this pull request as is:

It uses somewhat expensive AWS instances (~2 Dollar per run), thus likely not suited to run on  though that can be variable.
It does not (yet) allow running tests for a single implementation only.

I would add to this @mxinden that https://github.com/libp2p/test-plans  currently does not provide a mechanism for testing across platforms (as opposed to GIthub CI runners ) and given the current limitations in testing webRTC on webkit on linux that constraint could potentially inhibit other benchmarking efforts.

I would suggest to merge with what https://github.com/libp2p/test-plans/pull/184 started, i.e. for js-libp2p to call a workflow within libp2p/test-plans.

I agree, as I mentioned before that my only concern would for evaluating performance across platforms in the future.

I've updated the CI job to output a comparison matrix that passes if there is no performance degradation greater than 20% @mxinden

I've updated the CI job to output a comparison matrix that passes if there is no performance degradation greater than 20% @mxinden

Driveby - I'm not close here.
Looking at the table, lets make sure we're clear on the units.
20% seems like too much slippage.  Can we have this less like < 5%?
Also, if not's already, do we run each test a few times and then take the average or median to make sure we're not hit by outliers?

Thanks for the feedback @BigLep and @mxinden , I've incorporated it.

The threshold is now 5% for performance degradation tolerance.
Based on @mxinden 's suggestion I have standardized the base unit as bytes across the perf service, so the units for the bandwidth is thusB/s
The perf tests run 5 times and then an average is taken which are the bandwidths used for comparison.

How stable are these performance measurements on GitHub runners? Asked differently, how much variance are you seeing across runs?

Since updating to using an average bandwidth that it has failed the 5% threshold on one occasion.

I'm not sure you can run reliably run tight regression tests on GitHub actions CI.

In the ideal world, this should run on every PR to highlight any perf regressions or improvements. It should fail CI if perf degrades by more than X% relative to the main branch.

I think there is a misunderstanding with the above original comment by @MarcoPolo which spawned the automation work in this pull request. I don't think Marco suggested to implement custom benchmarking automation on top of GitHub runners, especially since we now have https://github.com/libp2p/test-plans/issues/63. @MarcoPolo please correct me if I am wrong.

I'm not sure you can run reliably run tight regression tests on GitHub provided runners.

I share this as the main concern.
@maschad I see your concerns on cross-platform testing and the changes required to the output format. Still I would suggest prioritizing an integration with https://github.com/libp2p/test-plans/issues/65 over implementing a custom setup.
@maschad do you have time next week to do a quick sync? That might clear up any confusion on both ends.

Based on @mxinden 's suggestion I have standardized the base unit as bytes across the perf service, so the units for the bandwidth is thusB/s

Thank you for the follow-up. Using base units makes the code a lot easier. That said, the base-unit for data rates, i.e. transfer speed, is bits/s, never byte/s. Also it is fine to use prefixes (e.g. kilo, mega, ...), though whenever one does, it needs to be explicit, e.g. by adding a unit when printing to stdout. Whenever I see a variable without the prefix e.g. size I assume it is the base unit, e.g. byte and not kibyte.

The perf tests run 5 times and then an average is taken which are the bandwidths used for comparison.

I suggest using quantiles, e.g. the median, or the 95th percentile. Using the average hides outliers, e.g. among your 5 runs 2 might be crazy fast and 3 crazy slow, the average can still be within the bound.

I think there is a misunderstanding with the above original comment by @MarcoPolo which spawned the automation work in this pull request. I don't think Marco suggested to implement custom benchmarking automation on top of GitHub runners, especially since we now have https://github.com/libp2p/test-plans/issues/63. @MarcoPolo please correct me if I am wrong.

@maschad I see https://github.com/libp2p/js-libp2p/pull/1604#issuecomment-1610192057 and https://github.com/libp2p/test-plans/issues/65#issuecomment-1611696876. Still I would suggest prioritizing an integration with https://github.com/libp2p/test-plans/issues/65 over implementing a custom setup.

Thanks for clarifying, the rationale for introducing this additional automation work stemmed from this comment which suggested that I continue in the direction of implementing this custom performance benchmarking tool for js-libp2p, then post-merge, coalesce into a workflow on test plans, but there may have been a misunderstanding.

I'm not sure you can run reliably run tight regression tests on GitHub provided runners.

I would be interested to hear your and @MarcoPolo justification behind this.

@maschad do you have time next week to do a quick sync? That might clear up any confusion on both ends.

Sure! I will co-ordinate with you on Slack.

Thank you for the follow-up. Using base units makes the code a lot easier. That said, the base-unit for data rates, i.e. transfer speed, is bits/s, never byte/s. Also it is fine to use prefixes (e.g. kilo, mega, ...), though whenever one does, it needs to be explicit, e.g. by adding a unit when printing to stdout. Whenever I see a variable without the prefix e.g. size I assume it is the base unit, e.g. byte and not kibyte.

I suggest using quantiles, e.g. the median, or the 95th percentile. Using the average hides outliers, e.g. among your 5 runs 2 might be crazy fast and 3 crazy slow, the average can still be within the bound.

Good points 👍🏾

Following a conversation with @mxinden I'm converting this back to draft. The remaining work will seek to integrate this PR with the existing perf workflow so that Benchmark results can be visualized through the perf dashboard.
My next steps are:

Capture latency and output via stdout into the prescribed JSON format
Remove the iterations in the bandwidth test (since iPerf already does that through the workflow
Refactor these tests to accept  --server-ip-address , --transport, --upload-bytes and --download-bytes command line args as input as outlined in the adding a new implementation
Create a JS binary that can be called by the test-plans makefile to run the perf tests and open a PR against test-plans perf
Once merged, call that workflow here

@achingbrain I still think it's worthwhile to have a threshold here ( 5% as Steve suggested maybe?) that we will use to see if PRs introduce performance regressions and so I will modify my PR workflow to call the test-plan's workflow (once it is merged) and then based on the output, create a performance regression matrix.

@maschad one that that wasn't clear to me was whether this perf code will be added in this monorepo or introduce it into test-plans (like go-libp2p https://github.com/libp2p/test-plans/tree/master/perf/impl/go-libp2p)

@maschad one that that wasn't clear to me was whether this perf code will be added in this monorepo or introduce it into test-plans (like go-libp2p libp2p/test-plans@master/perf/impl/go-libp2p)

My apologies,  so yes my intention is for these tests to live in this monorepo where they will be ran in perf by calling a Makefile which downloads the various docker images and builds the JS  based on the commit hash (similar to what happens with the js interop tests) and then runs it using the perf runner. This is similar to how we already store the interop tests
That's what I was alluding to here:

Create a JS binary that can be called by the test-plans makefile to run the perf tests and open a PR against test-plans perf

I will be OOO from July 6th - July 17th so I will resume work on this once I return.

Update:
Running these perf tests locally i.e. running npm run start with a server and dialler will output a latency measurement to stdout.
I had spent a significant amount of time trying to run the perf tests using the terraform provisioned infrastructure  but to no avail, it ended up being a lot of AWS wrangling which I think is tangential to the essence of this PR, more is outlined here
These tests will be ran on this workflow but given this PR outputs the measurement of latency to stdout as required by the test plans implementation setup this PR should be ready for review.

I've removed the perf workflow as discussed here for now, once https://github.com/libp2p/test-plans/pull/244 is merged we can introduce a workflow to run on release / main in a follow up PRs.


Can not login with Google

Operating system
Windows 10
YouTube Music Desktop App Version
The newest version
Bug description

Steps to reproduce
Can not login with Google
Relevant log output
No response

@Venipa @otomir23 Sorry for ping, but I cant normally use the app because of this and it doesnt seem like only I have this issue

I managed to contact one of the developers directly and he said I had to click "try again" button until it allowed me to login. It worked for me


Standardize repository

Migrate to GitHub Actions
Add --forceExit Jest flag to CI test script

This repo's test script has been complaining about "open handles" that were still running when the main Jest process finished. This is not a problem locally, but for some reason the Jest process hangs indefinitely in GitHub Actions due to this problem. The --forceExit flag functions as a workaround for now.

Move Jest config from package.json to jest.config.json
Update package build and lint scripts to match module template
Add test:watch script
Add @lavamoat/allow-scripts and setup script
Add .prettierrc.js

So I was looking into why the tests started stalling, and I found that it was because of config differences. Luckily Jest has a command that makes comparing config rather easy: yarn jest --showConfig. This highlighted many differences, some of which were probably unintended? Going through them now.


mcuboot: update mcuboot to support swap using move

Summary
Older versions of mcuboot did not support swap using move and therefore the build would have failed CONFIG_MCUBOOT_SWAP_USING_MOVE=y.
Newer mcuboot contains initial support of swap using move for NuttX. Also Makefile was updated to as some bootutil files were removed from mcuboot.
Impact
Updates MCUboot and because of deletion of some files older versions will not compile.
Testing
Tested on SAMv7 MCU.

Also updated cmake format


Puzzle Slider

Want to add a puzzle slider game where players can solve a maths puzzle by sliding the numbers in their screen

I want to work on this issue of adding this new game. So please assign me this issue.

Assigned this issue to you. Kindly complete it within a week and go through the readme and contributing.md for successful merge. All the best to your work.


Configure security headers

For good practice, we should strive to get a good score on https://securityheaders.com/. To attain that goal, one of the things we need to do is set up a CSP and some other security headers. The secure.py library makes this very convenient since it has integration with Django. I suppose we want the CSP as strict as possible while still ensuring the website functions. We may need to adjust it as we progress in development, but we need to start somewhere.

Please see attached what has been presented on 10.21.2021.Research is still in progress.
Presentation_CSP_10.21.2021.docx


test s3

Terraform Initialization ⚙success
Terraform Validation 🤖success
Terraform Plan 📖success
Show Plan

terraform
Running plan in Terraform Cloud. Output will stream here. Pressing Ctrl-C
will stop streaming the logs, but will not stop the plan running remotely.

Preparing the remote plan...

To view this run in a browser, visit:
https://app.terraform.io/app/stagging-env/gh-action/runs/run-ihumYkEgobaXw6uR

Waiting for the plan to start...

Terraform v1.3.7
on linux_amd64
Initializing plugins and modules...

Terraform used the selected providers to generate the following execution
plan. Resource actions are indicated with the following symbols:
  + create

Terraform will perform the following actions:

  # aws_s3_bucket.test-bucket will be created
  + resource "aws_s3_bucket" "test-bucket" {
      + acceleration_status         = (known after apply)
      + acl                         = "public-read"
      + arn                         = (known after apply)
      + bucket                      = (known after apply)
      + bucket_domain_name          = (known after apply)
      + bucket_prefix               = "itf-"
      + bucket_regional_domain_name = (known after apply)
      + force_destroy               = false
      + hosted_zone_id              = (known after apply)
      + id                          = (known after apply)
      + object_lock_enabled         = (known after apply)
      + policy                      = (known after apply)
      + region                      = (known after apply)
      + request_payer               = (known after apply)
      + tags_all                    = (known after apply)
      + website_domain              = (known after apply)
      + website_endpoint            = (known after apply)

      + cors_rule {
          + allowed_headers = (known after apply)
          + allowed_methods = (known after apply)
          + allowed_origins = (known after apply)
          + expose_headers  = (known after apply)
          + max_age_seconds = (known after apply)
        }

      + grant {
          + id          = (known after apply)
          + permissions = (known after apply)
          + type        = (known after apply)
          + uri         = (known after apply)
        }

      + lifecycle_rule {
          + abort_incomplete_multipart_upload_days = (known after apply)
          + enabled                                = (known after apply)
          + id                                     = (known after apply)
          + prefix                                 = (known after apply)
          + tags                                   = (known after apply)

          + expiration {
              + date                         = (known after apply)
              + days                         = (known after apply)
              + expired_object_delete_marker = (known after apply)
            }

          + noncurrent_version_expiration {
              + days = (known after apply)
            }

          + noncurrent_version_transition {
              + days          = (known after apply)
              + storage_class = (known after apply)
            }

          + transition {
              + date          = (known after apply)
              + days          = (known after apply)
              + storage_class = (known after apply)
            }
        }

      + logging {
          + target_bucket = (known after apply)
          + target_prefix = (known after apply)
        }

      + object_lock_configuration {
          + object_lock_enabled = (known after apply)

          + rule {
              + default_retention {
                  + days  = (known after apply)
                  + mode  = (known after apply)
                  + years = (known after apply)
                }
            }
        }

      + replication_configuration {
          + role = (known after apply)

          + rules {
              + delete_marker_replication_status = (known after apply)
              + id                               = (known after apply)
              + prefix                           = (known after apply)
              + priority                         = (known after apply)
              + status                           = (known after apply)

              + destination {
                  + account_id         = (known after apply)
                  + bucket             = (known after apply)
                  + replica_kms_key_id = (known after apply)
                  + storage_class      = (known after apply)

                  + access_control_translation {
                      + owner = (known after apply)
                    }

                  + metrics {
                      + minutes = (known after apply)
                      + status  = (known after apply)
                    }

                  + replication_time {
                      + minutes = (known after apply)
                      + status  = (known after apply)
                    }
                }

              + filter {
                  + prefix = (known after apply)
                  + tags   = (known after apply)
                }

              + source_selection_criteria {
                  + sse_kms_encrypted_objects {
                      + enabled = (known after apply)
                    }
                }
            }
        }

      + server_side_encryption_configuration {
          + rule {
              + bucket_key_enabled = (known after apply)

              + apply_server_side_encryption_by_default {
                  + kms_master_key_id = (known after apply)
                  + sse_algorithm     = (known after apply)
                }
            }
        }

      + versioning {
          + enabled    = true
          + mfa_delete = false
        }

      + website {
          + error_document           = (known after apply)
          + index_document           = (known after apply)
          + redirect_all_requests_to = (known after apply)
          + routing_rules            = (known after apply)
        }
    }

Plan: 1 to add, 0 to change, 0 to destroy.
╷
│ Warning: Argument is deprecated
│
│   with aws_s3_bucket.test-bucket,
│   on main.tf line 20, in resource "aws_s3_bucket" "test-bucket":
│   20: resource "aws_s3_bucket" "test-bucket" {
│
│ Use the aws_s3_bucket_versioning resource instead
│
│ (and 3 more similar warnings elsewhere)
╵

Pushed by: @nanthakumaran-s, Action: pull_request


Fix broken links

The CONTRIBUTING.md links got broken with https://github.com/owncloud/core/pull/25937 and updated in core / documentation with https://github.com/owncloud/core/pull/26087 and https://github.com/owncloud/documentation/pull/2618.
There are also a few links pointing to http://github.com/* instead of https://github.com which i have updated also.

@RealRancor I don't think that using http:// with github really qualifies as broken.

curl -i http://github.com/owncloud/3rdparty/pull/253
HTTP/1.1 301 Moved Permanently
Content-length: 0
Location: https://github.com/owncloud/3rdparty/pull/253
Connection: close

The 301 code is happily interpreted by all my browsers, and results in an automatic redirect to the https:// version of the same. Are you saying this does not work for you?

ok ok :-)


Feature request: Update target modules to get some usage data

Description

In order to gain some usage stats, we can't use the default release zip / tar files since there are no download stats available from the GitHub API for them.
This Issue to to update the PowerShell module to target the new artefacts that have already been setup for bootstrap and starter.
Describe the solution you'd like

If we create some artefacts for each release, we can then target them from the PowerShell module and get some stats. There will be no functionality or content changes, just a different file name.
There aren't any known alternatives outside of adding telemetry to the code, which is overkill at this time.
Describe any alternatives you've considered

Additional context

Released in 2.1


Custom enchant potions not working

so i made a custom enchant and saved it. but when i used it ingame it gave me the wrong potion effects
Tank: #Enchantment
Enabled: True #Enable and disable the enchantment
Name: 'Tank' #The in-game name of the enchantment
Color: '&4' #The color of the enchantment on the item
BookColor: '&4&l' #The color of the enchantment on the book
MaxPower: 5 #Max lvl the enchantment goes up to
Categories: #All the categories the Enchantment can be found in
- 'Legendary'
Info:
Name: '&4&lTank'
Description:
- '&c&lArmor Only'
- '&3Gives You Mining Fatgiue, Strength'
- '&3And High Resistance'
EnchantOptions: #Customizing Options for each enchantment.
ItemsEnchantable: 'Armor' #You can pick from Armor, Boots, Helmet, Axe, Sword, Weapons(Swords & Axes), and Bow.
ArmorOptions: #Options that only effect Armor Enchantments.
PowerIncrease: 0 #How many times the Potion Effects go up each lvl.
PotionEffects: #Potion types that will be applied.
- 'MINING_FATIGUE:1, Time:1000000'
- 'INCREASE_DAMAGE:3, Time:1000000'
- 'RESISTANCE:10, Time:1000000'
and the effects i got were these
https://gyazo.com/5b42d19e70cfb29e52d52808fd2403be

Try DAMAGE_RESISTANCE and SLOW_DIGGING.
They can be found here:
https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/potion/PotionEffectType.html


Injected Custom Converters are not used #110

Hi I'm reopening this issue 110 with spring dozer 6.5.0 and spring boot 2.2.6 because I realize I've hit this problem everytime I try to use dozer with spring and end up falling back to dozer 4 no spring.
So I have a
@Component
public class ExceedenceConverter extends DozerConverter<Exceedence, ExceedenceDto> implements MapperAware {
}

And I am calling map and debugging the MappingProcessor.mapGeneral
I can see
private final List<CustomConverter> customConverterObjects;
    private final Map<String, CustomConverter> customConverterObjectsWithId;

both contain my Converter
but
Class<?> converterClass = MappingUtils.findCustomConverter(converterByDestTypeCache, classMap.getCustomConverters(), srcObj .getClass(), destType);

Uses a classMap which only contains UUID converter.
It seems that
mapping = classMapBuilder.createDefaultClassMap(globalConfiguration, srcClass, destClass);

Does not include anything about my convertor or class.
So my convertorClass is always null.
I am a sad panda.

From what I can tell the CustomConverters from DozerBeanMapperFactoryBean never get into the GlobalConfiguration of the Mapper on build()
I don't know why - but that's effectively what @friednail  hacky workaround does is use reflection to copy the converters into the mappers global configuration.
That should be done by the DozerBeanMapperBuilder imho.

Yes! Thanks to @friednail for doing the hard ground work. I was able to prove it by inserting this method after autowiring mapper into my service.
It creates a description for every converter in the global configuration.
 private void fixMapper() throws IllegalArgumentException, IllegalAccessException, NoSuchFieldException, ClassNotFoundException {
        Field globalConfigurationField = DozerBeanMapper.class.getDeclaredField("globalConfiguration");
        globalConfigurationField.setAccessible(true);
        com.github.dozermapper.core.classmap.Configuration globalConfiguration = (com.github.dozermapper.core.classmap.Configuration) globalConfigurationField.get(mapper);

        Field customConvertersField = DozerBeanMapper.class.getDeclaredField("customConverters");
        customConvertersField.setAccessible(true);
        List<CustomConverter> customConverters = (List<CustomConverter>) customConvertersField.get(mapper);

        for (CustomConverter cc : customConverters) {
            CustomConverterDescription ccd = new CustomConverterDescription();
            ccd.setClassA(Class.forName(((ParameterizedType)cc.getClass().getGenericSuperclass()).getActualTypeArguments()[0].getTypeName()));
            ccd.setClassB(Class.forName(((ParameterizedType)cc.getClass().getGenericSuperclass()).getActualTypeArguments()[1].getTypeName()));
            ccd.setType(cc.getClass());
            globalConfiguration.getCustomConverters().addConverter(ccd);
        }
    }

Additionally please add a default constructor to DozerBeanMapperFactoryBean so we can debug its construction.

@warrenc5 Thank you for the solution. Running that is still the only way to properly register custom converters even though the first issue was opened 8 years ago :cricket:


Custom Calendar View

Is your feature request related to a problem? Please describe.
The default calendar view uses circles and small dots for the number of events. This does not match the rest of the app style.
Describe the solution you'd like
Use custom CalendarBuilders from the documentation for this package. https://pub.dev/documentation/table_calendar/latest/table_calendar/CalendarBuilders-class.html
there is an example on the front page of the github for the package that it would be nice to emulate, with squares for both the selected date, and for the number of events on that day.

How about this? @Larsonog @tedbjurlin @reidst


Master branch's changes to the 1.3.0 branch and general code optimizations.

This P.R. is not finish yet. I will add Javadoc template and a lot of cleaning for the sources.

I guess you are saying you want to merge the master branch into 1.3.0? If you want to do that I would create a PR from master to 1.3.0 directly in this repository without a fork

Ok, thank you.


C++ exception when reshaping after transposing on GPU

The following code (or this sample project):
var arr = MLXArray([0,1,2,3,4,5,6,7,8,9,10,11]).reshaped([1, 2, 2, 3])
print(arr)

arr = arr.transposed(0, 2, 1, 3)
print(arr)
print(arr.reshaped([1, 4, 3]))

results in a c++ vector index out of bounds exception on the last reshape operation with the following backtrace:

Click to expand
* thread #5, stop reason = signal SIGABRT
    frame #0: 0x0000000186ff15e0 libsystem_kernel.dylib`__pthread_kill + 8
    frame #1: 0x0000000103e3bfa8 libsystem_pthread.dylib`pthread_kill + 288
    frame #2: 0x0000000186f36908 libsystem_c.dylib`abort + 128
  * frame #3: 0x0000000100075cfc MLXPlayground`std::__1::vector<unsigned long, std::__1::allocator<unsigned long>>::operator[][abi:de180100](this=0x00006000024fb3d8 size=3, __n=3) const at vector:1400:3
    frame #4: 0x0000000100558778 MLXPlayground`std::__1::tuple<std::__1::vector<int, std::__1::allocator<int>>, std::__1::vector<std::__1::vector<unsigned long, std::__1::allocator<unsigned long>>, std::__1::allocator<std::__1::vector<unsigned long, std::__1::allocator<unsigned long>>>>> mlx::core::collapse_contiguous_dims<unsigned long>(shape=size=4, strides=size=2) at utils.h:76:32
    frame #5: 0x0000000100b38ec0 MLXPlayground`void mlx::core::copy_gpu_inplace<unsigned long>(in=0x00006000028a8400, out=0x00006000028b4140, data_shape=size=4, strides_in_pre=size=4, strides_out_pre=size=3, inp_offset=0, out_offset=0, ctype=General, s=0x00006000009a76d0) at copy.cpp:59:27
    frame #6: 0x0000000100b38da0 MLXPlayground`mlx::core::copy_gpu_inplace(in=0x00006000028a8400, out=0x00006000028b4140, ctype=General, s=0x00006000009a76d0) at copy.cpp:147:10
    frame #7: 0x0000000100b38ccc MLXPlayground`mlx::core::copy_gpu(in=0x00006000028a8400, out=0x00006000028b4140, ctype=General, s=0x00006000009a76d0) at copy.cpp:40:3
    frame #8: 0x0000000100b38dfc MLXPlayground`mlx::core::copy_gpu(in=0x00006000028a8400, out=0x00006000028b4140, ctype=General) at copy.cpp:44:3
    frame #9: 0x0000000100ba81ac MLXPlayground`mlx::core::Reshape::eval_gpu(this=0x00006000009a76c8, inputs=size=1, out=0x00006000028b4140) at primitives.cpp:823:5
    frame #10: 0x00000001004293a4 MLXPlayground`mlx::core::UnaryPrimitive::eval_gpu(this=0x00006000009a76c8, inputs=size=1, outputs=size=1) at primitives.h:145:5
    frame #11: 0x0000000100b88448 MLXPlayground`mlx::core::metal::make_task(mlx::core::array, bool)::$_0::operator()(this=0x0000600002ac4608) at metal.cpp:81:23
    frame #12: 0x0000000100b881a4 MLXPlayground`decltype(std::declval<mlx::core::metal::make_task(mlx::core::array, bool)::$_0&>()()) std::__1::__invoke[abi:de180100]<mlx::core::metal::make_task(mlx::core::array, bool)::$_0&>(__f=0x0000600002ac4608) at invoke.h:344:25
    frame #13: 0x0000000100b8815c MLXPlayground`void std::__1::__invoke_void_return_wrapper<void, true>::__call[abi:de180100]<mlx::core::metal::make_task(mlx::core::array, bool)::$_0&>(__args=0x0000600002ac4608) at invoke.h:419:5
    frame #14: 0x0000000100b88138 MLXPlayground`std::__1::__function::__alloc_func<mlx::core::metal::make_task(mlx::core::array, bool)::$_0, std::__1::allocator<mlx::core::metal::make_task(mlx::core::array, bool)::$_0>, void ()>::operator()[abi:de180100](this=0x0000600002ac4608) at function.h:169:12
    frame #15: 0x0000000100b86f80 MLXPlayground`std::__1::__function::__func<mlx::core::metal::make_task(mlx::core::array, bool)::$_0, std::__1::allocator<mlx::core::metal::make_task(mlx::core::array, bool)::$_0>, void ()>::operator()(this=0x0000600002ac4600) at function.h:311:10
    frame #16: 0x000000010046b6f0 MLXPlayground`std::__1::__function::__value_func<void ()>::operator()[abi:de180100](this=0x000000017002aee8) const at function.h:428:12
    frame #17: 0x000000010046af90 MLXPlayground`std::__1::function<void ()>::operator()(this=0x000000017002aee8) const at function.h:981:10
    frame #18: 0x0000000100d30828 MLXPlayground`mlx::core::scheduler::StreamThread::thread_fn(this=0x0000600001fa0000) at scheduler.h:54:7
    frame #19: 0x0000000100d30f80 MLXPlayground`decltype(*std::declval<mlx::core::scheduler::StreamThread*>().*std::declval<void (mlx::core::scheduler::StreamThread::*)()>()()) std::__1::__invoke[abi:de180100]<void (mlx::core::scheduler::StreamThread::*)(), mlx::core::scheduler::StreamThread*, void>(__f=0x0000600002ab7da8, __a0=0x0000600002ab7db8) at invoke.h:312:25
    frame #20: 0x0000000100d30ef0 MLXPlayground`void std::__1::__thread_execute[abi:de180100]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (mlx::core::scheduler::StreamThread::*)(), mlx::core::scheduler::StreamThread*, 2ul>(__t=size=3, (null)=__tuple_indices<2UL> @ 0x000000017002af7f) at thread.h:199:3
    frame #21: 0x0000000100d30b9c MLXPlayground`void* std::__1::__thread_proxy[abi:de180100]<std::__1::tuple<std::__1::unique_ptr
<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (mlx::core::scheduler::StreamThread::*)(), mlx::core::scheduler::StreamThread*>>(__vp=0x0000600002ab7da0) at thread.h:208:3
    frame #22: 0x0000000103e3a9ac libsystem_pthread.dylib`_pthread_start + 136

Similar code in mlx python doesn't crash. When I do the same operation on the CPU, it doesn't crash.
I'm running this on Xcode 16 b1 with macOS Sequoia b1.

I doesn't reproduce for me on macOS Sonoma 14.4:
array([[[0, 1, 2],
        [6, 7, 8],
        [3, 4, 5],
        [9, 10, 11]]], dtype=int32)

I will have to try it on Sequoia

Seems related to https://github.com/ml-explore/mlx-c/issues/30. I think we should wait until updating MLX Swift and MLX C to the latest MLX then try this again. MLX Core had a few updates to get it working with OS 15 https://github.com/ml-explore/mlx/pull/1208

#101 puts mlx-swift on the latest mlx -- can you give this a try again?

I'm still getting the same crash in Xcode 16 with error vector[] index out of bounds when calling generate using the latest version of mlx-swift. Before the crash, this warning is shown multiple times:
Warning: Compilation succeeded with:

program_source:261:31: warning: unused variable 'MAX_REDUCE_SPECIALIZED_DIMS' [-Wunused-const-variable]
static constant constexpr int MAX_REDUCE_SPECIALIZED_DIMS = 4;
                              ^
program_source:262:31: warning: unused variable 'REDUCE_N_READS' [-Wunused-const-variable]
static constant constexpr int REDUCE_N_READS = 16;
                              ^
program_source:263:31: warning: unused variable 'SOFTMAX_N_READS' [-Wunused-const-variable]
static constant constexpr int SOFTMAX_N_READS = 4;
                              ^
program_source:264:31: warning: unused variable 'RMS_N_READS' [-Wunused-const-variable]
static constant constexpr int RMS_N_READS = 4;
                              ^
program_source:265:31: warning: unused variable 'RMS_LOOPED_LIMIT' [-Wunused-const-variable]
static constant constexpr int RMS_LOOPED_LIMIT = 4096;
                              ^

Those are from the JIT compile and are not related.  OK, so it is still failing this particular test on Sequoia (macOS 15)

Yeah. Still throw the error after updating to the latest version 0.15.2

I tried this on the main and the latest tag of mlx-swift, and still getting the same crash.

This might be related to https://github.com/ml-explore/mlx-examples/issues/642

OK, I can reproduce this on macOS 15 with Xcode 16.  I find that it reproduces with Debug builds but not Release.
The problem is in:
collapse_contiguous_dims(

      out_strides[j].push_back(st[to_collapse[i - 1]]);

(lldb) p to_collapse[i - 1]
(std::vector<int>::value_type) 3

(lldb) p st
(const std::vector<unsigned long> &) size=3: {
  [0] = 12
  [1] = 3
  [2] = 1
}

The code executes the same way in Release but appears to silently pass when evaluating st[3]

And this is turned on in Debug builds and appears to be new in macOS 15:
// Debug hardening mode checks.

#  elif _LIBCPP_HARDENING_MODE == _LIBCPP_HARDENING_MODE_DEBUG

Per https://libcxx.llvm.org/Hardening.html#notes-for-users

More info here in the Apple Xcode 16 C++ language support docs:
https://developer.apple.com/xcode/cpp/#library-hardening

Getting same error:
_LIBCPP_ASSERT_VALID_ELEMENT_ACCESS(__n < size(), "vector[] index out of bounds");
Mac Version 15.0 Beta (24A5279h)
Version 16.0 beta 2 (16A5171r)

Right, there is no fix yet, but we have a better handle on what is going on and why it shows up in macOS 15

Note: this is merged in the mlx core side but not picked up in mlx-swift yet.

Any idea when this will be in mlx-swift?

They just cut a release of the mlx core so I would need to integrate that.  Hopefully next week.
You can avoid the assertion by building Release, though that doesn't actually avoid the underlying bug that the new assertions picked up.

This should be fixed once #115 merges

Merged #115, please try this out

This fixes the crash for me.

It fixes for me too, thanks!


Manifold-credentials Not Working On Docs

Reason for change
The manifold-credentials component was not not working in the example field on the docs site. Also updating the graphql call to the more type safe style.
Testing
I tested this local running npm run docs on the Resource Credentials page. Should look like this.

Checklist

[ ] CHANGELOG: The Unreleased section of CHANGELOG was updated
[x] Prop changes: docs were updated
[ ] Prop changes: E2E tests were updated, testing from the highest level possible
[ ] Platform testing: If this change should be tested against a platform, has it been?

Looks like the Happo test is failing, because Happo runs strict type checks on everything. Because we changed that component’s data structure, Happo is picking up on that.
Not sure what the quickest way to handle that would be. IMO you have a few options:

Use the generated ResourceWithCredentialsQuery type in manifold-credentials-view-happo.ts and use your own mock data in that file, set to that generated type (may be simplest because nothing else will use that, so why clutter things up?)
Create some mock folder where for every generated query, there’s mock data to go with it (this seems like a pain to me)
Just force the existing mock data into the generated ResourceWithCredentialsQuery type. IMO I don’t like this because this could cause other issues.


Minor button text changes

change 'Share on E-Mail' to 'Share by E-Mail'
change medium size button text to icon + network

Test plan

Choose "Medium" buttons, confirm that the text includes the icon and the network i.e. "<icon> Facebook"
Choose "Large" buttons, confirm that the text for E-Mail says "Share by E-Mail" rather than "Share on E-Mail"
Paste the code for each case into html files to verify that the changes are reflected

Addresses https://github.com/mxstbr/sharingbuttons.io/issues/33

This is amazing, extremely well done PR! :clap: Great job, thanks so much!


audit: Collect and check for S3 bucket encryption

In 2017 a feature was released to have default encryption on a bucket: https://aws.amazon.com/blogs/aws/new-amazon-s3-encryption-security-features/
Collect aws s3api get-bucket-encryption and check.
This can also be enforced via bucket policies: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingServerSideEncryption.html

Collected in #393
I'm not sure if I should audit for this.  What are there reasons you wouldn't have default encryption on buckets?  A public bucket for hosting content wouldn't, but is that still acceptable?


minor logging change in scheduler controller

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

3 of 4 (75.0%)  changed or added relevant lines in 1 file are covered.
3 unchanged lines in 1 file lost coverage.
Overall coverage remained the same at 60.611%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

internal/controller/nodemaintenancescheduler_controller.go
3
4
75.0%

Files with Coverage Reduction
New Missed Lines
%

internal/controller/nodemaintenancescheduler_controller.go
3
83.12%

Totals

Change from base Build<PHONE_NUMBER>7:
0.0%

Covered Lines:
714

Relevant Lines:
1178

💛  - Coveralls


change forecast day's date format

Current Behavior:
currently forecast dates are full month name and day.
Expected Behavior:
Reduce forecast format to be 3 letter abbreviation and day (or number)

done


Update Error

I try to update the module, and I get an error message that it can't be updated because it requires core software version 9, and I have 0.8.9.   So, I tried updated my core, and it said that no update was available....   So, I assume my core is up-to-date.

V9 is coming soon. The new module version has nothing new compared to V8's besides some fixes.


Minor update to ensure xhrRequest() works in IE11

Setting the responseType after calling open() to avoid the InvalidStateError in Internet Explorer

Fixed by another PR, thanks for contributing!


Add IBApiNext.getManagedAccounts

Add getManagedAccounts(): Promise<string[]> function to IBApiNext for getting list of all managed accounts..

To recap.
IB uses logic where one account is a master account and others are subaccount managed by the master account.
Correct me if wrong

Yes.  Peterffy can see it all. Your introducing broker only can see all accounts he manages, your financial advisor only sees his clients and you can only see the accounts that linked with the login user. It is all just a matter configuration (e.g. you can have multiple portfolio/trading accounts with independent login username, all liked into one master account).


Consolidate Service Account classes.

Attempt at #211 (and integrating changes from #1 in as well).
@nathanielmanistaatgoogle This doesn't implement the scope-less credentials yet but I wanted you to get a chance to look at it before then. I am going to remove the SignedJwtAssertionCredentials class and will probably update this PR when that is done as well.

Looks mostly really good.

@nathanielmanistaatgoogle Addressed review comments (with some remarks) and also added a commit to remove the old service account implementation (as well as to use json_str instead of s in all of the from_json methods)

@nathanielmanistaatgoogle FYI https://bitbucket.org/ned/coveragepy/issues/473/context-manager-confuses-branch-miss is causing test_service_account.py to report less than 100% coverage but it'll resolve itself once the update mentioned in the Bitbucket issue is released

@nathanielmanistaatgoogle It'd be nice to use ServiceAccountCredentials.from_json_keyfile in GoogleCredentials.from_json and oauth2client.client._get_application_default_credential_from_file, but as of right now the factory only takes a filename. What do you think about making from_json_keyfile accept one of three objects as its first argument:

filename
file / stream object
parsed dictionary (that used to be JSON)

As for what I think about making from_json_keyfile accept one of three objects as its first argument: ServiceAccountCredentials.from_json_keyfile is a wholly original method that neither implements nor overrides anything else, right? Does it need to be able to take the other two kinds of input or is it simply enough to provide some way to accept the other two kinds of input? Why not define ServiceAccountCredentials.from_json_keydict and ServiceAccountCredentials.from_json_keyfilename and then have all three internally and privately delegate to common code? Would that work?

I also wanted to discuss the fact that this implementation double-stores scopes and shadows lots of fields from the parent that are unused
Here is a quick rundown of everything in __dict__ for a ServiceAccountCredentials object:
_kwargs -> {}
_private_key_id -> 9ad967...
_private_key_password -> None
_private_key_pkcs12 -> None
_private_key_pkcs8_pem -> -----BEGIN PRIVATE KEY-----...
_scopes -> https://www.googleapis.com/auth/userinfo.email
_service_account_email -><EMAIL_ADDRESS>_service_account_id -> 10639...
_signer -> <oauth2client._openssl_crypt.OpenSSLSigner object at 0x7f6d2801d090>
_user_agent -> None
access_token -> ya29.fQ...
assertion_type -> None
client_id -> None
client_secret -> None
id_token -> None
invalid -> False
refresh_token -> None
revoke_uri -> https://accounts.google.com/o/oauth2/revoke
scopes -> set([])
store -> None
token_expiry -> 2016-02-03 22:34:22.926351
token_info_uri -> None
token_response -> {u'access_token': u'ya29.fQ...', u'token_type': u'Bearer', u'expires_in': 3600}
token_uri -> https://accounts.google.com/o/oauth2/token
user_agent -> None

@nathanielmanistaatgoogle I'm fine with have three factories (from_json_keyfile, from_json_keydict and from_json_keyfile_name) for varying stages of parsed-ness. Is the reason for this just an aversion to allowing multiple types in a function signature?

@nathanielmanistaatgoogle We should also discuss how to break this up. I think the first two PRs could be

pure-Python module as a stand-alone
make service_account.py use oauth2client.crypt instead of the module's own hand-rolled auth in current use
remove client.SignedJWTCredentials (will require temporarily disabling / breaking the system tests for .p12 keys)
everything else?

Responding to "I also wanted to discuss the fact that this implementation double-stores scopes and shadows lots of fields from the parent that are unused": my first reaction is "grumble grumble public classes grumble grumble implementation inheritance grumble grumble cuss words cuss words", but that's not productive. So my second reaction is: that's just kind of a thing that happens with deep inheritance hierarchies, but does any of it negatively effect either the implementation complexity or the correctness of the particular leaf class currently under review?

Responding to "Is the reason for this just an aversion to allowing multiple types in a function signature?": yes. In my experience ad-hoc polymorphism always harms the long-term maintenance of a codebase and should be avoided wherever it can be avoided.

Responding to "We should also discuss how to break this up": that does sound like a good plan. Certainly "introduce new code in its own commit" is a winning first step. Why break the system tests? Would it just be a matter of changing the out-of-repository artifacts of those tests at the same time as changing the in-repository artifacts of those tests?

@nathanielmanistaatgoogle Pushed a new commit to address the docstring issues and to remove _token_uri and _revoke_uri from the svc. acct. creds constructor.
RE: Breaking system tests, I just meant that if we have a commit where client.SignedJWTCredentials is deleted and ServiceAccountCredentials doesn't support .p12 keys, then the system test corresponding to a .p12 key can't be run.

Responding to: "if we have a commit where client.SignedJWTCredentials is deleted and ServiceAccountCredentials doesn't support .p12 keys, then the system test corresponding to a .p12 key can't be run" - that would be an intermediate commit, right? ... and we don't even care if tests pass at intermediate commit points, only at head-of-pull-request and head-of-repository, right?

Well my plan was for 4 PRs, not 4 commits. You can break it up as you like, not worth discussing with 4 posts (which we've done already).

Ah, okay. I have no objection to four pull requests if that's your preference. Thank you for the clarity.

Closing in lieu of #395, #396, #397, #398, #399


Fix pre-commit pipeline

Changelog / Overview

Motivation
Flake8 is currently checking all files in a pr, where it only should check the changed files.
Maybe this pr will fix this problem

Explanation for Changes

Testing Status

Further Comments

Checklist

[ ] I have read the Contributing Guidelines
[ ] I have written a descriptive PR title (see top of PR template for examples)
[ ] I have written a changelog entry for the PR or deem it unnecessary
[ ] My new functions/classes either have a docstring or are private
[ ] My new functions/classes have tests added and (optional) examples in the docs
[ ] My new documentation builds, looks correctly formatted, and adds no additional build warnings

Reviewer Checklist

[ ] The PR title is descriptive enough
[ ] The PR is labeled correctly
[ ] The changelog entry is completed if necessary
[ ] Newly added functions/classes either have a docstring or are private
[ ] Newly added functions/classes have tests added and (optional) examples in the docs
[ ] Newly added documentation builds, looks correctly formatted, and adds no additional build warnings

I think I found now a satisfying solution.
It was not possible for me to make pre-commit/flake8 to only consider the changed files (note, for isort and black, this is working).
But on my local machine, there were no errors.
So I decided to add a "skip" option only for github:
ci:
    skip: [flake8]

That only skips the flake8 pre-commit hook on github.
Locally it is still there, as I tested with this example:
def notGoodFunction(  bad ,styling, is_t, bad):
    wow = None
    if wow == True:
       return True
    else:
       return "A" + "Super long line that flake probably won't like" + "at" + "    all"

(thanks to @jsonvillanueva )

And now the good part:
As we have flake8 checking already in our current git workflow, we don't need it on the git pre-commit.
With this said, I think we can then remove the isort and black format check from github, as pre-commit takes care of it. (Maybe we wait one week to make sure that no other bugs are there.)

Is there a disadvantage to simply fixing the files which make pre-commit.ci currently fail and removing our separate black / flake8 / isort checks in the pipeline?
Fewer of our own custom setup pipelines also means fewer breaking points.

simply fixing the files which make pre-commit.ci currently fail

If it was easy to fix these lines, then I would totally with you to remove flake8 from the custom pipeline.
Unfortunately, I am not able to find this line.
Also, the documentation about the flake8 is not very large: https://flake8.pycqa.org/en/latest/user/using-hooks.html
As this current solution is working properly, I would stick to it.
But if someone has an idea to fix it, we can still try to make it work.
Or we open an issue at https://github.com/pre-commit/pre-commit , because as can be seen in the screenshot above, the local behaviour is different than the GitHub behaviour.

I don't think the solution to this is to disable flake8 with pre-commit.ci -- instead, since pre-commit.ci is supposedly faster than GitHub Actions/workflows, I'd rather disable the style checking workflows under our repos .github directory removed/disabled.

I also prefer the solution from #1278 over this here.


Not working

The NPM Package doesn't work properly
After running npm i mal-api you cannot require('mal-api')
It works if I install the github repo directly though.

Thanks for reporting the issue, v2.0.0 should work via npm.


Linking error: unresolved external symbol _rpmalloc_module_init

I'm trying to make use of rpmalloc in a relatively large windows code base.
I'm getting this error: unresolved external symbol _rpmalloc_module_init
What does this signify? I can see this code in the malloc.c
#pragma section(".CRT$XIB",read)
__declspec(allocate(".CRT$XIB")) void (*_rpmalloc_module_init)(void) = _global_rpmalloc_init;
#pragma comment(linker, "/include:_rpmalloc_module_init")

But I'm not sure what this is doing.
In terms of options I have ENABLE_PRELOAD=1
My hope was that I could fairly easily replace our existing allocator with the preload option automatically handling initialization for our process and threads. The documentation seems to suggest this is possible but maybe that's not the case.

Not sure what the purpose of #pragma comment(linker, "/include:_rpmalloc_module_init") is but I've commented that out and things seem to be working fine after a few patches to fix warnings about some unused functions.

The #pragma section is to make sure that the global init is called before any global constructors are called - C++ in particular has a nasty habit of doing memory allocation during global variable construction.
The #pragma comment is to force the linker to include the module init symbol and not treat it as unused.
Unfortunately overriding global allocation on Windows for C style allocation (malloc/free) is very hard as it requires rewiring the executable in runtime. C++ new/delete works pretty well.

I can't seem to reproduce this, closing for now - let me know if you still need assistance in sorting this out.

This happened to me on Windows i686 MSVC (see CI logs)

This PR resolves the issue: https://github.com/mjansson/rpmalloc/pull/331

This compilation error happened for me when compiling to x86 architecture.

Adding _ to beginning of symbol solve the problem.
#pragma comment(linker, "/include:__rpmalloc_module_init")
So problem in symbols mangling under different platforms.
Need to separate x86/amd64 pragma for correct linkage.


Error while running docker_build

Hi I followed all instructions to run this repo but im getting the following error when im trying to run docker_build. Please help
 AT_FORALL_SCALAR_TYPES_WITH_COMPLEX(HL_PT_DEFINE_TYPECHECK);
                                    ^
/sbmc_app/halide/include/HalidePyTorchHelpers.h: In instantiation of ‘Halide::Runtime::Buffer<scalar_t> Halide::PyTorch::wrap(at::Tensor&) [with scalar_t = float]’:
build/temp.linux-x86_64-3.7/scatter2gather_cpu_float32.pytorch.h:15:74:   required from here
/sbmc_app/halide/include/HalidePyTorchHelpers.h:67:46: warning: ‘T* at::Tensor::data() const [with T = float]’ is deprecated [-Wdeprecated-declarations]
     scalar_t* pData  = tensor.data<scalar_t>();
                                              ^
In file included from /sbmc_app/anaconda/lib/python3.7/site-packages/torch/include/ATen/Tensor.h:11:0,
                 from /sbmc_app/anaconda/lib/python3.7/site-packages/torch/include/ATen/Context.h:4,
                 from /sbmc_app/anaconda/lib/python3.7/site-packages/torch/include/ATen/ATen.h:5,
                 from /sbmc_app/anaconda/lib/python3.7/site-packages/torch/include/torch/csrc/api/include/torch/types.h:3,
                 from /sbmc_app/anaconda/lib/python3.7/site-packages/torch/include/torch/csrc/api/include/torch/data/dataloader_options.h:4,
                 from /sbmc_app/anaconda/lib/python3.7/site-packages/torch/include/torch/csrc/api/include/torch/data/dataloader/base.h:3,
                 from /sbmc_app/anaconda/lib/python3.7/site-packages/torch/include/torch/csrc/api/include/torch/data/dataloader/stateful.h:3,
                 from /sbmc_app/anaconda/lib/python3.7/site-packages/torch/include/torch/csrc/api/include/torch/data/dataloader.h:3,
                 from /sbmc_app/anaconda/lib/python3.7/site-packages/torch/include/torch/csrc/api/include/torch/data.h:3,
                 from /sbmc_app/anaconda/lib/python3.7/site-packages/torch/include/torch/csrc/api/include/torch/all.h:4,
                 from /sbmc_app/anaconda/lib/python3.7/site-packages/torch/include/torch/extension.h:4,
                 from build/temp.linux-x86_64-3.7/wrapper.cpp:1:
/sbmc_app/anaconda/lib/python3.7/site-packages/torch/include/ATen/core/TensorBody.h:303:7: note: declared here
   T * data() const {
       ^
error: command 'gcc' failed with exit status 1

@muhqu could you please help

@darthgera123 sorry, I'm not involved in this project. You might want to reach out to actual contributors.

@muhqu  thanks for replying and sorry for bothering. @mgharbi  could you please look into it once

anyone?

This is due to a change of API in Pytorch 1.3, and the Halide bindings are not up to date, yet. I will look into this

thanks. meanwhile what version of pytorch did you use, ill try to compile it with that

The breaking change happens in >= 1.3. So, 1.2 or earlier should work.

I've changed the torch requirements in the dockerfile and setup.py. This should be fixed in 6a38abbe9df409ea4d44398dc610d1f3e8072392


fix: return non-zero if there were errors in processing

Fixes #80 very simply.  There may be something more elegant, but at least this helped my use case!

OK, I think I resolved your requests.  I tried testing various error conditions that could come up in add_repo-collaborator and successfully failed ;-)


improve the sampling workflow

Sample mode should not be considered transparent because typically the workflow would be:

run a smaple
inspect the result
perform full run

If transparent, then the originals are noved to the trash location, but this is a problem for a sample run, since the user would have to manually retrieve the original back to source location and re-run. Transparency is only good for a full run.
We need a better workflow.
  IN THIS CASE, THE SAMPLE FILES WILL BE IN THE WRONG LOCATION AND SHOULD BE MOVED TO THE --output

migrated to go 1.22, which is now causing many lint errors to fire, which didnt so previouly, which means these lint errors are bing fixed in this issue.


Geometry manager error while using grid

Unable to use the CTkMenuBar due to a error from geometry manager

@DIY-TECH-HACKER The default geometry method is set to pack, you have to manually set the menu in grid if you are using grid method in the main window.
menu = CTkMenuBar(master=self)
menu.grid()

Thank you for your reply


[API] Allow donation in arbitrary currency

User story
As API user, I can easily donate some fixed amount in my currency to any collective so that I don't need to care about currencies.
The current workaroud looks as follows:

Load list of collective I want to donate to

Query account's host currency for each collective via

Example code
import functools
import itertools
from typing import List, Tuple

def chunk(it, size):
    it = iter(it)
    return iter(lambda: tuple(itertools.islice(it, size)), ())

def sanitize_slug(slug: str):
    return slug.replace("-", "_")

async def query_account_host(client: gql.Client, slugs: str|List[str]|Tuple[str]):
    if type(slugs) not in [list, tuple]:
        slugs = [slugs]

    async def _query_account_host(slugs: List[str]):
        account_query_template = """
              {slug_sanitized}: account(slug: "{slug}") {{
                ... on Individual {{
                  host {{
                    name
                    slug
                    currency
                    hostFeePercent
                  }}
                }}
                ... on Collective {{
                  host {{
                    name
                    slug
                    currency
                    hostFeePercent
                  }}
                }}
                ... on Organization {{
                  host {{
                    name
                    slug
                    currency
                    hostFeePercent
                  }}
                }}
                ... on Fund {{
                  host {{
                    name
                    slug
                    currency
                    hostFeePercent
                  }}
                }}
                ... on Project {{
                  host {{
                    name
                    slug
                    currency
                    hostFeePercent
                  }}
                }}
              }}
        """
        account_query = "".join([account_query_template.format(slug=slug, slug_sanitized=sanitize_slug(slug)) for slug in slugs])
        query = f"""
            query {{
              {account_query}
            }}
        """
        data = await graphql_query(client, query)
        if data is None:
            return {}

        return data

    # NOTE query is too long to yield internal server error when running with whole database
    chunk_size = 10
    data_chunks = [await _query_account_host(slugs_chunk) for slugs_chunk in chunk(slugs, chunk_size)]
    data = functools.reduce(lambda value, element: value | element, data_chunks, {})

    return {slug: account["host"] for slug, account in data.items()}

Query the conversion rate from my credit card company and calculate fees for conversion

Calculate amount in collective's host's currency I want to donate

This is quite complicated and error prone often ending up in spending a different amount from what I intended to spend. It shouldn't make a big difference for the credit card company or Stripe making the currency exchange. Your platform even seems to support currency exchange information for orders based on Amount.CurrencyExchangeRate.
Best solution for this problem
Calling createOrder() with Amount.Currency set to an arbitrary value.
MVP
API call works without error.
Metrics
Number of people making use of this feature.
Documentation
None necessary.

Triage Template (team only)
This template is for members of the team to triage for prioritisation. For more guidance see https://www.loom.com/share/369ab467fbc64dec848085d38ff57ca0:
P1 high frequency, high impact
P2 low frequency, high impact
P3 high frequency, low impact
P4 low frequency, low impact
Examples of high impact - a problem affects users during an essential process (expenses and payments > onboarding and registration > contributing) with no workaround.
High frequency - >10% of users affected (measured as a proportion of total potential users for this case).

Hi @darkdragon-001
Is this a design project?
If yes, I would love to work on it.

@Mayaleeeee What do you mean by "design project"? So far it's just scripts interacting with the API to work around various other deficiencies (see my other open issues).

Thanks @Betree, this issue is covered by the combination of both linked issues. Closing as duplicate.


Replace (not fill) the root HTML element

I'm trying to create pages with arbitrary content directly in the body, something like this:

As far as I understand this is currently impossible with Halogen. The reasons are:
A) components have a single root HTML element;
B) runUI inserts the root component into the chosen container element.
So if  is chosen as the container element, there will necessarily be a wrapping element between  and the component's content. I have to avoid the wrapping element because I want my pages to work with existing, arbitrary stylesheets.
A solution to my problem would involve relaxing either A) allowing multiple root elements in components, or B) replacing the whole root element with my root component. I think the latter option is the more feasible. My root component could then have as root element a , which would replace the existing .
First of all: does this make sense? Are there any other options I've missed?
I had partial success by modifying the render function thus:
-       void $ DOM.appendChild node (DOM.htmlElementToNode container)
+       let containerNode = DOM.htmlElementToNode container
+       parent <- DOM.parentNode containerNode
+       traverse_ (\pn -> DOM.replaceChild node containerNode pn) parent

This works fine with a childless root component, but as soon as I add a child nothing is rendered.
Thanks in advance for your help!

Trying to modify render that way doesn't work as that function is used to render all components recursively, not just the root level - so by replacing the parent each time, it's flattening the hierarchy at too many levels. Aside from that it probably doesn't work because the VDom patching can't proceed when the node being patched is not what it is expected to be :wink:.
You can just do the replacement outside of Halogen though in your main function, something like this:
module Main where

import Prelude

import Control.Monad.Eff (Eff)
import Control.Monad.Eff.Class (liftEff)
import Control.Monad.Maybe.Trans (MaybeT(..), lift, runMaybeT)
import DOM.HTML.Types (htmlElementToNode)
import DOM.Node.Node (removeChild)
import DOM.Node.ParentNode (QuerySelector(..))
import Halogen.Aff as HA
import Halogen.VDom.Driver (runUI)

main :: Eff (HA.HalogenEffects ()) Unit
main = HA.runHalogenAff do
  HA.awaitLoad
  runMaybeT do
    html <- MaybeT $ HA.selectElement (QuerySelector "html")
    body <- MaybeT $ HA.selectElement (QuerySelector "body")
    _ <- liftEff $ removeChild (htmlElementToNode body) (htmlElementToNode html)
    lift $ runUI ?component unit html

Thank you, @garyb! It works, it's clean, and I also understand why it works :smiley: