Add a test that loads all BP code, showing true coverage.

This commit came out while I was reviewing your large pull request so I decided to get it out fast.
It adds a single test that does nothing except load every piece of code possible.  This does two things - make sure it all at least loads and there aren't conflicts or even syntax errors - and makes our coverage over all our code and not just over "code that happens to be loaded as part of specific tests".
Our coverage now is around 40%...

Nice
On Sun, Feb 12, 2017 at 6:50 AM, Tom Swirly<EMAIL_ADDRESS>wrote:

This commit came out while I was reviewing your large pull request so I
decided to get it out fast.
It adds a single test that does nothing except load every piece of code
possible. This does two things - make sure it all at least loads and there
aren't conflicts or even syntax errors - and makes our coverage over all
our code and not just over "code that happens to be loaded as part of
specific tests".
Our coverage now is around 40%...
You can view, comment on, or merge this pull request online at:
https://github.com/ManiacalLabs/BiblioPixel/pull/102
Commit Summary

Add a test that loads all BP code, showing true coverage.

File Changes

M .coveragerc
https://github.com/ManiacalLabs/BiblioPixel/pull/102/files#diff-0
(2)
A test/all_test.py
https://github.com/ManiacalLabs/BiblioPixel/pull/102/files#diff-1
(46)

Patch Links:

https://github.com/ManiacalLabs/BiblioPixel/pull/102.patch
https://github.com/ManiacalLabs/BiblioPixel/pull/102.diff

—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/ManiacalLabs/BiblioPixel/pull/102, or mute the thread
https://github.com/notifications/unsubscribe-auth/AA6a6pBptEAo5VUeKb9Ntkqb_6WptoJhks5rbvIIgaJpZM4L-dxG
.

Travis failed!  Interesting... let me see!

So, sorry to get distracted on this, but I need this in order to show my patch for your big CL!
So, interestingly enough, I can reproduce this in a clean virtualenv!  If in BP.py I type:
 pip install -r test_requirements.txt

then it installs a bunch of stuff - but it does not install pyserial, even though that appears to be in requirements.txt.
Very interesting.  Glad I found this because some sucker somewhere will be having this issue too.  Now to figure out how to fix it.

pyserial is in test_requirements.txt NOT requirements.txt
On Sun, Feb 12, 2017 at 7:15 AM, Tom Swirly<EMAIL_ADDRESS>wrote:

So, sorry to get distracted on this, but I need this in order to show
my patch for your big CL!
So, interestingly enough, I can reproduce this in a clean virtualenv! If
in BP.py I type:
pip install -r test_requirements.txt
then it installs a bunch of stuff - but it does not install pyserial, even
though that appears to be in requirements.txt.
Very interesting. Glad I found this because some sucker somewhere will be
having this issue too. Now to figure out how to fix it.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/ManiacalLabs/BiblioPixel/pull/102#issuecomment-279214529,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AA6a6n7EQydthOMFr2KMLXF-Krq2rmXSks5rbvf3gaJpZM4L-dxG
.

err... scratch that, reverse it.
On Sun, Feb 12, 2017 at 7:18 AM, Adam Haile<EMAIL_ADDRESS>wrote:

pyserial is in test_requirements.txt NOT requirements.txt
On Sun, Feb 12, 2017 at 7:15 AM, Tom Swirly<EMAIL_ADDRESS>wrote:

So, sorry to get distracted on this, but I need this in order to show
my patch for your big CL!
So, interestingly enough, I can reproduce this in a clean virtualenv! If
in BP.py I type:
pip install -r test_requirements.txt
then it installs a bunch of stuff - but it does not install pyserial,
even though that appears to be in requirements.txt.
Very interesting. Glad I found this because some sucker somewhere will be
having this issue too. Now to figure out how to fix it.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/ManiacalLabs/BiblioPixel/pull/102#issuecomment-279214529,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AA6a6n7EQydthOMFr2KMLXF-Krq2rmXSks5rbvf3gaJpZM4L-dxG
.

And what do you mean to "show your patch"?
On Sun, Feb 12, 2017 at 7:18 AM, Adam Haile<EMAIL_ADDRESS>wrote:

err... scratch that, reverse it.
On Sun, Feb 12, 2017 at 7:18 AM, Adam Haile<EMAIL_ADDRESS>wrote:

pyserial is in test_requirements.txt NOT requirements.txt
On Sun, Feb 12, 2017 at 7:15 AM, Tom Swirly<EMAIL_ADDRESS>wrote:

So, sorry to get distracted on this, but I need this in order to show
my patch for your big CL!
So, interestingly enough, I can reproduce this in a clean virtualenv! If
in BP.py I type:
pip install -r test_requirements.txt
then it installs a bunch of stuff - but it does not install pyserial,
even though that appears to be in requirements.txt.
Very interesting. Glad I found this because some sucker somewhere will
be having this issue too. Now to figure out how to fix it.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/ManiacalLabs/BiblioPixel/pull/102#issuecomment-279214529,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AA6a6n7EQydthOMFr2KMLXF-Krq2rmXSks5rbvf3gaJpZM4L-dxG
.

Oh - er - I have a patch for your change that removes the external SimpleWebSocketServer library you checked in and replaces it by a line in requirements.txt.
By "show my patch" I mean to prove that that patch really works - so that Travis would fail if my patch were broken.
But to show that is valid I need to have a test that exercises it.  So why not exercise all the code, at least by loading it?
Thus this.

NO! That dev breaks it all the time. That's why I pulled it in. Not my
first time with that library. Sorry, but BDFL says it's gotta stay internal.
On Sun, Feb 12, 2017 at 7:22 AM, Tom Swirly<EMAIL_ADDRESS>wrote:

Oh - er - I have a patch for your change that removes the external
SimpleWebSocketServer library you checked in and replaces it by a line in
requirements.txt.
By "show my patch" I mean to prove that that patch really works - so that
Travis would fail if my patch were broken.
But to show that is valid I need to have a test that exercises it. So why
not exercise all the code, at least by loading it?
Thus this.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/ManiacalLabs/BiblioPixel/pull/102#issuecomment-279214922,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AA6a6tFApq_efPpUAU8qcOVR6Y1-5i8Kks5rbvmagaJpZM4L-dxG
.

I also have an incoming change that actually fixes some performance issues
with that library that the dev doesn't want. Was just waiting for this main
changeset to be done.
On Sun, Feb 12, 2017 at 7:25 AM, Adam Haile<EMAIL_ADDRESS>wrote:

NO! That dev breaks it all the time. That's why I pulled it in. Not my
first time with that library. Sorry, but BDFL says it's gotta stay internal.
On Sun, Feb 12, 2017 at 7:22 AM, Tom Swirly<EMAIL_ADDRESS>wrote:

Oh - er - I have a patch for your change that removes the external
SimpleWebSocketServer library you checked in and replaces it by a line in
requirements.txt.
By "show my patch" I mean to prove that that patch really works - so that
Travis would fail if my patch were broken.
But to show that is valid I need to have a test that exercises it. So why
not exercise all the code, at least by loading it?
Thus this.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/ManiacalLabs/BiblioPixel/pull/102#issuecomment-279214922,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AA6a6tFApq_efPpUAU8qcOVR6Y1-5i8Kks5rbvmagaJpZM4L-dxG
.

Heh, well, we can just comment that one line out too.  It's only a single line dependency, and it doesn't directly exercise anything I'm interesting.
It's an ittle bit of a pain because several drivers depend on that and they can't be smoke-tested either.  but, that's life.  :-D
However, I'm really interested as to why that one package doesn't load automatically.  Three dependencies, two load, no errors!

Well, it'll be a few lines in the test, but still, no problems.

Comment out what? Now I'm confused about what part you are responding to.

You want to avoid needing a dependency on pyserial for Travis to pass, is what I'm reading.
I introduced this with this all_test thing.  I am going to remove it, but I'm also interested in finding out why Travis doesn't load pyserial when it's so clearly in the requirements.txt.
So far I have discovered that if I have a single line requirements.txt with just pyserial, it does work.  :-o

Ok...weird. Wonder if pyserial just cannot be installed on their docker containers for some reason? Wait... you said it does with just that in the file. No idea then. Option would be to leave it in the requirements.txt with all the rest and then add a separate "pip install pyersial" line to .travis.yml
Anyways, mostly concerned with the SimpleWebSocketServer... no removing that! :) I'm just gonna put it back...

You shouldn't check in third party code just because the code part is one file and you can get away with it.
It should be loaded in requirements.txt like any other dependency!
Yes, I do do this sometimes in C++ but that's because there is no packaging system.  Python has a great packaging system and you're already using it.
Yes, I know this package isn't in pip, but you just add a specific commit ID to requirements.txt and it all works.

Again... I have changes coming to this that I won't likely be able to get
the main dev to take. Consider this a fork for our own purposes. For
anything else I'd agree with you. But this stays.
On Sun, Feb 12, 2017 at 7:51 AM, Tom Swirly<EMAIL_ADDRESS>wrote:

You shouldn't check in third party code just because the code part is one
file and you can get away with it.
It should be loaded in requirements.txt like any other dependency!
Yes, I do do this sometimes in C++ but that's because there is no
packaging system. Python has a great packaging system and you're already
using it.
Yes, I know this package isn't in pip, but you just add a specific commit
ID to requirements.txt and it all works.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/ManiacalLabs/BiblioPixel/pull/102#issuecomment-279216540,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AA6a6qtnyBAVClM2_zaSU34SFjpSF1y2ks5rbwA_gaJpZM4L-dxG
.

You ain't giving me any tangible reason for doing it wrong - just fear, uncertainty and doubt.  :-D
However, I'm not going to hold it up of course, but I will be proposing a patch for it down the line.
You will lose your attachment to the dark side of the force and come to embrace correct packaging, young padawan.

LOL... we run our own internal PyPi server at work because of the number of
times we've been bitten by packages out of our control or issues with being
unable to reach the real PyPi when we need to. Granted, we have hundreds
that need to be installed on dozens of testing runs each day.
And the reason I'm giving you right now is that there will be updates to
this library that the official one won't have unless the main dev takes it.
If he takes it, by all means, let's pin it to that commit and move on. So,
yeah... that's uncertainty. I don't think he'll take them, but he might...
but for now there's nothing we can do but load my local version if I want
to use those changes. I was just holding off until this main update is in.
Or hell... would it make you feel better if I straight up fork the GitHub
repo and we load from that? But at that point, what's the point... we just
need to one file.
Side note, I'm straight up chaotic neutral with a slight lean towards evil.
I've embraced it. This is nothing new :P
Also, here's one of my issues with the dependencies in BiblioPixel... I
hate the number of dependencies that have to be installed that you may
never ever use! Pyserial is a great example. I'm all ears if you can
think of a good way to only have to install this stuff if and when you
actually need it. BiblioPixelAnimations is kind of this way. There's a ton
of stuff you would have to install if you want everything, but you may not
need them.
On Sun, Feb 12, 2017 at 8:01 AM, Tom Swirly<EMAIL_ADDRESS>wrote:

You ain't giving me any tangible reason for doing it wrong - just fear,
uncertainty and doubt. :-D
However, I'm not going to hold it up of course, but I will be proposing a
patch for it down the line.
You will lose your attachment to the dark side of the force and come to
embrace correct packaging, young padawan.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/ManiacalLabs/BiblioPixel/pull/102#issuecomment-279217142,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AA6a6vmzQO_dkoqNhiDwWTruwfkGM8Ieks5rbwK4gaJpZM4L-dxG
.

Good is better!
Basically, "evil" means "choosing to defect in the prisoner's dilemma".   But everything that humans have accomplished has involved choosing to cooperate - keeping mutually beneficial agreements even when defecting might involve better short term gains.

If you want to fork this guy's library, we should do that under the BiblioPixel username.  Perfectly legit.
If you make changes and want to have any hope of contributing them back upstream it's the only way to go!  Or even if you don't.
Suppose this guy releases some OK changes - you can rebase your fork against his and bring them in with no sweat.
There's no reason not to do it right.

I agree completely with your desire to avoid dependencies.
Indeed, I think we should remove all of requirements.txt.  Seriously.
Those entries should go elsewhere - into "nice-to-have.txt" :-D or something - "optional.txt"?  Or just into test_requirements.txt
requirements.txt are the things that are required for your library to be loaded.  I think nothing in your requirements.txt is "required" for an installation of BP!
This is bad.  Suppose I write my own library using BP as a dependency. Unfortunately, this means that all this crap listed currently in dependencies.txt gets sucked in when I never use it.

I am going to move everything into test_requirements.txt for now.  I am going to see if I can get serial to load from that.  It's really weird that that doesn't work and I get no message or error.
Then I'll get back to you. DAMN, I wanted to write a coherent review before sending it and now you see the annoying opening and not the good parts at the end.  Sorry!!

Haha... I know, I know... just messing with you. Just my D&D play style :P
Glad you agree on the non-required requirements! :) Maybe let's add some try/excepts around things that aren't strictly required that then print out "To use this module please: pip install ". I do this with Pyserial now. And then yes... remove requirements.txt (well, it should be in setup.py actually) entirely.
And yeah... I'm all for doing the web socket thing "right" if we can get there. I mainly didn't want to remove it now as it's still in flux.
But yeah... I'm thinking a fork of that library is in order. For another day...

OK, I think you'll like this much better.
requirements.txt goes entirely.  We test almost everything, and we have an expanded test_requirements.txt.
Travis passes, too.

+1 works for me


Update master branch to be 1.22 post 1.21 branch cut

Please provide a description of this PR:
Update master branch to be 1.22 post 1.21 branch cut

@howardjohn or @costinm, would you approve. Thanks.


add Descriptable#describedAs(Supplier)

describedAs(Supplier<String>) makes it eaiser to use lazy descriptions from Kotlin
This is a follow-up to #2061
An alternative option might be to make Description implements Supplier<String> and migrate to Supplier<String> instead of Description, however, that is a more involved change.

looking at it in the next few days

Could this be merged? 😉

Integrated thanks @vlsi!


Bugsnag gets lost when request is big (bugsnag-node)

In our case, Bugsnag does not work either with a huge amount of data (example 729k of json in the body). It also gets lost and error never reaches the Bugsnag server, or reaches it incorrectly cause it is never shown in the interface. Same test with a smaller json works just fine.
We are using bugsnag with nodejs.
We are using bugsnag-node and it has this problem as well
github.com/bugsnag/bugsnag-node
As mentioned on another issue #8 that seemed to have a similar problema on bugsnag-php
For requests over 1024 bytes, the curl HTTP client (used by PHP lib) adds Expect: 100-continue which trips up the agent and the response is extremely slow.

Thank you for the report, @rafaelspecta. Can you provide an example of a report reaching the server incorrectly? If it would expose private data, feel free to send it to<EMAIL_ADDRESS>and we’ll continue there.

Following is the json body I sent that caused the problem. If I send a smaller json body everything works fine.
CollectSend-8e15.json.gz

Thanks for the test case. The current payload size limit of the API is 512kb. I’ve updated the docs to be clearer on this point. Going forward though, we could perhaps update the individual libraries (or maybe agent itself) to intelligently trim payloads which will be rejected.

I think that is a great suggestion. The most important thing is not losing the error notification. If we have a large payload we can implement ourselves another way to logging that if the hole payload is really important. But never miss the error notification.
How would you trim it?


AlertManager allows creating invalid silences

What did you do?

Create new silence
Add matcher with a value that contains an illegal character (comma)

What did you expect to see?
An error indicating that the silence is invalid
What did you see instead? Under which circumstances?
The silence is created with no errors. When inspecting the silence via the UI, we receive 400 Bad Request error on the call to /alerts with filter. The response body says "bad matcher format". No alerts are silenced.
Environment
Using the Docker image, 0.16.2
This seems like a bug to me, since AlertManager allows a user to create a silence with illegal matchers and does not indicate that there is a problem.

Actually looks like alerts do get silenced (not sure why I thought they weren't) so the issue is only viewing the alerts affected by the silence.

This is fixed by https://github.com/prometheus/alertmanager/pull/1788 and will be available in v0.17 (whenever it is ready).

Closing as a duplicate. Feel free to re-open with more details if it doesn't match your view.


Disable canary builds

They're more trouble than they're worth due to https://github.com/lerna/lerna/pull/287
Using the forked lerna version may be impacting gating jobs

LGTM


fix dryrun

only check PACKTIVITY_DRYRUN in actual execution code, not in argv prep

Coverage increased (+0.06%) to 81.509% when pulling f9c2e18aca96b41e5f9dd255baeb037fa9eda819 on fix_dryrun into 18e7e9a39a7ef3884b69e6b02977530c4059c51c on master.


Bootstrap 3 - input-group

There is an error in bootstrap 3 with input-group. Is it possible to change placeholder to only one element?

   {label test /}

      {input test, class => 'form-control'}
      m2
	{* sem se prida error message coz je spatne *}

   {* spravne umisteni *}

I believe you can use this workaround for now - manually create the message element by setting the "data-lfv-message-id" attribute containing the id of your message element.
So this should work:

   {label test /}

      {input test, class => 'form-control', data-lfv-message-id => 'MY_FORM_TEST_MESSAGE_ID'}
      m2
    {* sem se prida error message coz je spatne *}

   {* spravne umisteni *}

I'm just not sure about the syntax of setting that data- attribute.
In future I might add special data- attribute containing the class of message's parent element, so you won't need to specify it yourself as in this example.

Thanks! I wasn't sure if something like this exists, your example works well.


SerializeAsV2 not available in ASP.NET Core 2.1

The readme file has to be edited in section Serialize Swagger in the 2.0 format. There you have stated that the swagger version could be changed from version 3.0 to version 2.0 with the following code:
app.UseSwagger(c =>
{
    c.SerializeAsV2 = true;
});

However, the property SerializeAsV2  cannot be found by Visual Studio IntelliSense. Is the property removed?
I have installed packages Swashbuckle.AspNetCore and Swashbuckle.AspNetCore.Annotations. If a package is missing, please, add it to the readme file. If this is available only to specific package version, please, add it to the readme file.

Dup of #961. In summary, the readme was reflecting master as opposed to latest stable version. The long term solution is to move docs over to readthedocs.com. In the meantime, I've updated master branch to maintain README for the latest stable version.


Syncing latest changes from upstream main for ceph-csi-operator

PR containing the latest commits from upstream main branch

/lgtm
/approve


Avoid unnecessary exceptions on Jenkins log

in case **/jobs/ directory is a link to a mounted volume so nextBuildNumber stays in sync with buildHistory and symlinks
such cases are usual when running Jenkins in Docker as a Phoenix Docker Container

[x] adding this check avoids unnecessary Exceptions on Jenkins logs

Thank you for a pull request! Please check this document for how the Jenkins project handles pull requests


Fixed test cases + added the cache generation flag

The PR implements two important flags

SKIP_CERT <--- so test cases can skip certificates and can run the test cases without certificate.
CACHEGENERATOR <-- test cases can be used to generate cache for vite as well.

and fixes linting.

This seems like 2 unrelated PRs.


feat(eslint): upgrade typescript-eslint/eslint

Updates the version of @typescript-eslint/*, eslint. Removes unused rules, configs.

Consider activating the new EXPERIMENTAL_useSourceOfProjectReferenceRedirect flag. Made my life much better working with project references...

@uniqueiniquity could you please review these eslint related changes?


add alchemy to data indexers

Question: I see all the images follow a similar pattern in socialCards, wonder if they are autogenerated or we have to add them?
If latter, let me know if there's a template I can edit and add. Ty!

@SahilAujla hey, thanks for this. To answer your question, the socialcards images are autogenerated by a script that runs on build -- so you don't have to add one. You can also delete the img from the file if you want, and the script will add it.
The page you added looks good, but just a few things to address before we merge:

The linter is picking up the word EigenLayer -- could you add this to project-words.txt to prevent this please?
You need to manually update sidebars.js to ensure your page shows in the sidebar -- our sidebar isn't autogenerated unfortunately.

Thanks @jlwllmr!
I have made the requested changes 🙏


⚠ Bofrost.es has degraded performance

In dd80351, Bofrost.es (https://www.bofrost.es) experienced degraded performance:

HTTP code: 200
Response time: 1573 ms

Resolved: Bofrost.es performance has improved in 47458c9 after 10 minutes.


Fix current compilation error

Thanks, I merged some stuff forward and messed it all up.  I should not have done this on a Friday afternoon.

debatable if you should not have done it (joking, of course) :) I was very eager to get some of these small PRs in, before I present some really meaningful work to you. Thank you for merging it

😂 it's not debatable I definitely shouldn't have done it.
Thanks again!


List of compiletest directives yet to support

Non-exhaustive:

[ ] exec-env (useful for rruxwry build -R, #18)
[ ] unset-exec-env (")
[ ] run-flags (")
[ ] doc-flags (lol, how did I not know of this flag?)

Some of these are blocked on #18.


Added media extension ala: https://docs.djangoproject.com/en/2.0/topi…

Fixes #23

Coverage increased (+0.08%) to 89.971% when pulling 8bac5bf138bdbcc624708412b38f253c3cf04855 on ogtony:master into bc495201374529613a475e83899785d6658f8ce3 on omji:master.

Any progress on it?

Are you asking me?
I can tell you this branch works and I am using it in a beta Django 2.0 site just fine if you want to work off my commit until the maintainers come and look around.

This works for me as well with Django 2.0.3.  Can we get some eyes on this by the maintainers?  I'd love to see this merged in.

I can't get it to work here. Am I doing it right ?
Pipfile :
[packages]
django-tabbed-admin = { git = 'https://github.com/omji/django-tabbed-admin.git', ref = '8bac5bf138bdbcc624708412b38f253c3cf04855' }

Then :
pipenv install --dev

In settings :
TABBED_ADMIN_USE_JQUERY_UI = True

Getting this error message in the JS console :
(index):1440 Uncaught TypeError: $(...).tabs is not a function
    at (index):1440
    at (index):1475
(anonymous) @ (index):1440
(anonymous) @ (index):1475

How can I resolve this ?
Thanks !

Works well here with Django 2.0.6 and Grappelli 2.11.1. Thanks!
Maintainers, please maintain! :-)

@omji can you merge this?

Thanks a million guys! Sorry for the silence, but I have some insane workload nowadays. If anyone wants to take over some admin role on this project that would be awesome!

I ll try to push a new version on Pypi today or tomorow! Thanks again!


adding introspector, lifted from arudino

Yes I need to
On Wed, Aug 30, 2023, 20:10 Saifeddine ALOUI @.***>
wrote:

@.**** commented on this pull request.
Can you please remove the unnecessary config.yaml~ file?
—
Reply to this email directly, view it on GitHub
https://github.com/ParisNeo/lollms_bindings_zoo/pull/7#pullrequestreview-1603658463,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AD5KQ2L6MP7GCZ3TUKBRPXDXX7JALANCNFSM6AAAAAA3IQ72RY
.
You are receiving this because you authored the thread.Message ID:
@.***>


Let notebook tests run against nessiedemo library in the source tree

The notebook unit tests in colab/tests/ use the released nessiedemo Python library on test.pypi. These tests should actually run against the code in the source tree.
If we do that, the Testing Jupyter Notebooks workflow shoud be merged into the main workflow as a separate job that depends on the one that tests the nessiedemo library or it could just run the nodebook unit tests right after tests for nessiedemo.

Fixed with #34


[$500] CRITICAL: Review who can remove whom from groups, workspaces, and workspace objects

Problem:
There are complex rules for which room members can see other room members -- rules that were recently updated because there wasn't widespread agreement on how it should work, and how it did work wasn't really to anyone's liking.  There's a risk we're doing the same with who can remove people from the room.
Solution:
As discussed in Slack, these are what the rules should be, as documented in this SO:

Nobody can leave or be removed from something they were automatically added to.  For example:

[ ] DM members can't leave or be removed from their DMs
[ ] Members can't leave or be removed from their own workspace chats
[ ] Admins can't leave or be removed from workspace chats
[ ] Members can't leave or be removed from the #announce room
[ ] Admins can't leave or be removed from #admins
[ ] Domain members can't leave or be removed from their domain chat
[ ] Report submitters can't leave or be removed from their reports (eg, if they are the report.accountID)
[ ] Report managers can't leave or be removed from their reports (eg, if they are the report.managerID)
[X] ~Group owners cannot be removed from their groups -- they need to transfer ownership first~

Note: Groups don't exist yet, so you can skip this

Excepting the above, admins can remove anyone. For example:

[X] ~Group admins can remove other group admins, as well as group members~
[ ] Workspace admins can remove other workspace admins, as well as workspace members, and invited guests

Excepting the above, members can remove guests. For example:

[ ] Workspace members can remove non-workspace guests.

Excepting the above, anybody can remove themselves from any object

[ ] Confirmed

As part of this GH please do the following:

Document the above rules in https://github.com/Expensify/App/blob/main/README.md in a new section called Security, put between Philosophy and Internationalization (add to the ToC and copy the header styles of the surrounding sections)

Find every place in the app that involves adding/removing people to an object's membership, and add a link to that new security section in a comment (eg, // Please see https://github.com/Expensify/App/blob/main/README.md#Security for more details)

Verify that each of the above rules is being correctly enforced by:

Create the conditions to test the rule (eg, for "DM members can't leave or be removed from their DMs", open a test DM to another user)
Manually trigger an API command that attempts to do the wrong thing (eg, attempt to remove either of the DM participants) -- ideally the server will correctly reject it, but if not, record it in this issue so we can fix the server.
Verify that there is no method in the client-side app to attempt the forbidden action (eg, in the case of the DM there is no UI to show the member list, so therefore the user can't attempt it)
Add a comment to this GH capturing evidence that you did this test (ie, a screenshot or console logs)
Check off the test in the OP and go to the next

When all the boxes are checked, submit the PR or the new Security section and all the corresponding comment links.

Thanks!
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~01fb7403bad51be652
Upwork Job ID:<PHONE_NUMBER>068182016
Last Price Increase: 2023-12-30

interested

Great question, this is a kind of different issue than normally.  So yes, we need some way to choose who to do this, and "first come first serve" doesn't seem very discerning.  Can you make a proposal that explains why we should pick you over someone else?  I'm not sure what that would entail -- maybe cite past experience, or show that you've already worked in this area of the code, or even pick one of the more complex ones to talk about how you would go about testing it?  Something to stand out.

@MonilBhavsar what are the next steps?  Do you select a proposal?  Or should this have been assigned a C+?

As per the process, I would like @aimane-chnaif to select a proposal and then I can finally assign them to the issue, if that sounds good

I have updated the github issue description on posting proposals for this issue. cc @quinthar @aimane-chnaif
@rayane-djouah you might want to update the proposal based on that update

Currently, the app does not provide features that attempt the forbidden actions. we should normalize this so developers would not attempt to include this features in the future. and we should ensure that the server reject these actions if someone attempts to do it by an API request.

Could you please elaborate what do you mean by - "we should normalize this so developers would not attempt to include this features in the future".

Internal team will need to add automated tests for this rules to the backend code in the future.

We'll definitely have server side tests and manual regression steps, but having jest tests to check disabled button or alert if not permitted action is also preferred

What's the next step here?  Who are we blocked on why?

Have asked for help here https://expensify.slack.com/archives/C03UK30EA1Z/p1705403120723279

Hello, I'm Artem from Callstack - expert group.
And I would like to help with this issue

Great!  @waterim can you please outline your proposal here?

Nobody can leave or be removed from something they were automatically added to. For example:

[X]  DM members can't leave or be removed from their DMs
[X]  Members can't leave or be removed from their own workspace chats
[X]  Admins can't leave or be removed from workspace chats
[X]  Members can't leave or be removed from the #announce room
[X]  Admins can't leave or be removed from #admins
[X]  Domain members can't leave or be removed from their domain chat?
[X]  Report submitters can't leave or be removed from their reports (eg, if they are the report.accountID)
[X]  Report managers can't leave or be removed from their reports (eg, if they are the report.managerID)

Excepting the above, admins can remove anyone. For example:

[X]  Workspace admins can remove other workspace admins, as well as workspace members, and invited guests

Excepting the above, members can remove guests. For example:

[X]  Workspace members can remove non-workspace guests.
A little bit weird behaviour that invited workspace member can remove creator of the room. I think it can be redesigned that creator of the room can't be deleted by someone who was added there.

Excepting the above, anybody can remove themselves from any object

[X]  Confirmed

Looks like all of those cases works fine, what we need to do is to:

Document all those rules.
Add comments to each of the part of the code where deleting is happening with "RemoveFromRoom" API call.
Write all tests and test a backend for all those checkboxes above.

@waterim currently members can't leave or be removed from #admins, #announce or workspace chats i.e. the functionality doesn't exist, right?
I think we should create issue to add those features, and make it follow the rules mentioned in this issue

@MonilBhavsar yes, it doesn’t exist, the only way is to remove user from the workspace fully.
Do we have some information like who can leave/remove people from workspace chats?

Do we have some information like who can leave/remove people from workspace chats?

Applying the above rules, I think this means:

Each member is added automatically to their own workspace chat, which means members cannot be removed from their own worksapce chats
Each admin is added automatically to all workspace chats, which means that admins cannot be removed from any workspace chat
Anybody else can be freely added to a workspace chat via invite or mention, meaning they can also be freely removed either by themselves, or by admins

Does this sound right?

Agree, sounds good to me 👍

@waterim Do you have an ETA for the comment and doc updates?

@waterim I see a PR linked to the issue. Nice!
Could you please tell what you'll be implementing in PR.
And, what do you think of the comment here https://github.com/Expensify/App/issues/33575#issuecomment-1902784809
Are we creating a new issue to handle leaving/removing members from workspace chats?

Hey @MonilBhavsar In PR I already added Security section and links, I think for this PR thats will be it.
To be clear:
"3. Verify that each of the above rules is being correctly enforced by:" - for this part I need to write test steps for all the rules and test it, also test backend API calls, right?
If yes, the only thing left is to test everything fully.
"Anybody else can be freely added to a workspace chat via invite or mention, meaning they can also be freely removed either by themselves, or by admins
From the https://github.com/Expensify/App/issues/33575#issuecomment-1902784809 the only 3d point is

Anybody else can be freely added to a workspace chat via invite or mention, meaning they can also be freely removed either by themselves, or by admins

"meaning they can also be freely removed either by themselves, or by admins" This part here looks like is not implemented right now. Because its not possible to leave from the workspace.
Yes, I think for this we need to create a new issue for leaving/removing members from workspace chats.
Remove already exists, admins can freely remove users, but its not possible to leave.
We need to create a ticket "Add possibility to leave from workspace"

@MonilBhavsar Have a question:
"Members can't leave or be removed from their own workspace chats"
Does it mean that members can't leave or be removed from a workspace they created or it means that members cant be removed from a "workspace room" they created?

Conditions to test rules:
DM members can't leave or be removed from their DMs

Open/Create any DM with another user
Check that no "Remove/Add/Leave" button exists

Members can't leave or be removed from their own workspace chats

Create a workspace/Go to any workspace you created
Add member/admin to this workspace
Login as this newly added user.

Create a room within a workspace
Invite someone from the workspace and someone from the outside
Login as a member of the workspace, but not as creator of room
Try to delete a guest

But its also a little bit weird behaviuor, because Its possible to remove a room<EMAIL_ADDRESS>@MonilBhavsar @quinthar - Is it a correct behaviour or we need to create a new issue for that?

"3. Verify that each of the above rules is being correctly enforced by:" - for this part I need to write test steps for all the rules and test it, also test backend API calls, right?

Yes

"meaning they can also be freely removed either by themselves, or by admins" This part here looks like is not implemented right now. Because its not possible to leave from the workspace.
Yes, I think for this we need to create a new issue for leaving/removing members from workspace chats.
Remove already exists, admins can freely remove users, but its not possible to leave.
We need to create a ticket "Add possibility to leave from workspace"

Great!  Can you create a new issue with detailed instructions on what to do, and then link the bullet in the original post to the new issue, so we can keep track of what needs to be done?

But its also a little bit weird behaviuor, because Its possible to remove a room<EMAIL_ADDRESS>@MonilBhavsar @quinthar - Is it a correct behaviour or we need to create a new issue for that?

Hm.... I think it's fine to remove a room creator (and it's fine for them to leave).

Just confirming, are you following these steps in order?  If so, what number are you on?

Earlier you mentioned EOW as a possible ETA, but it kinda seems unlikely that you'll finish by tomorrow, given that none of the boxes are checked.   Can you give an updated ETA?

@quinthar yes, Im following these steps, already added security section and links into the draft PR(was waiting for answers to continue on that)
Conditions to test those rules you can see as my previous message.
Just backend tests, create new issue and few improvements on the PR left for this issue
Regarding the EOW I think I was too optimistic, because didn’t take into account a time of the responses, but will try to create a new issue, test the backend and adjust security section today, new estimated ETA is a Tuesday/Wednesday because Im sure changes to security section and some other stuff will require improvements from PR reviewer and you.

Great!

@quinthar Created an issue, but I don't have access to change anything except of the text on the ticket.
Can't add labels, main project etc.

3. Anybody else can be freely added to a workspace chat via invite or mention, meaning they can also be freely removed either by themselves, or by admins

@quinthar @MonilBhavsar
Regarding this statement:
Workspace chat can have only user and all admins, but Its not possible to add any other members/guests to those chats.
Am I right? Because I tested this statement and it just doesnt work.
If Im right do we need to create a ticket to add this feature?

Catching up on this. Everything looks good 👍

But its also a little bit weird behaviuor, because Its possible to remove a room<EMAIL_ADDRESS>@MonilBhavsar @quinthar - Is it a correct behaviour or we need to create a new issue for that?

Hm.... I think it's fine to remove a room creator (and it's fine for them to leave).

Just to clarify here - I think we need atleast one room admin in the room to manage the room. If the room creator is the only admin and they leave the room, then there would be no admin to manage the room

Anybody else can be freely added to a workspace chat via invite or mention, meaning they can also be freely removed either by themselves, or by admins

@quinthar @MonilBhavsar Regarding this statement: Workspace chat can have only user and all admins, but Its not possible to add any other members/guests to those chats. Am I right? Because I tested this statement and it just doesnt work.
If Im right do we need to create a ticket to add this feature?

That sounds correct to me 👍 We would need to add that feature

How it should look like?
Just by mention we are adding members and then this member should be able to leave or be removed from this chat, right?
@quinthar @MonilBhavsar
If yes - I can create a new issue for that.

Also tested backend for those rules, no forbidden actions!
Updated with screenshots with responses here

Also I think there should be a separate ticket for "Leave from the workspace", or we can combine it together like: "Add possibility to leave from the workspace and workspace chats"

This issue is great.  Leaving from the workspace will automatically make you leave from the workspace chat.

Workspace chat can have only user and all admins, but Its not possible to add any other members/guests to those chats. Am I right? Because I tested this statement and it just doesnt work.

This is not correct.  Anybody can be invited to any chat, the sole exception being DM chats, which only ever have 2 participants.  But literally anybody can be added to literally any other chat.   So I can mention you into my workspace chat, and it'll work fine.

Just to clarify here - I think we need atleast one room admin in the room to manage the room. If the room creator is the only admin and they leave the room, then there would be no admin to manage the room
There's no such thing as a "room admin".  I think it's fine to remove the creator, as the creator gets no special treatment -- nothing breaks if they are removed, so far as I know.

Just by mention we are adding members and then this member should be able to leave or be removed from this chat, right?
I don't quite understand this question.  Can you elaborate on it?

This is not correct. Anybody can be invited to any chat, the sole exception being DM chats, which only ever have 2 participants. But literally anybody can be added to literally any other chat. So I should be able to mention you into my workspace chat, and it should work fine.

Okay, then I will create a new ticket for that. Because it doesn’t work now, I tried several times in workspace chat to mention different users(workspace members and not) and its not inviting this user

Just by mention we are adding members and then this member should be able to leave or be removed from this chat, right?

I don't quite understand this question. Can you elaborate on it?

As you said we should be able to invite new members to the workspace chats by „mentioning them”.
Admin and default member of the workspace chat are not able to leave or be removed from this workspace chat, but in the same time this „invited” user should be able to leave and admin/default member should be able to remove him, right?

Aha, great catch, please make an issue, thanks!

Okay, then I will create a new ticket for [mentioning users to add them to workspace chats]. Because it doesn’t work now, I tried several times in workspace chat to mention different users(workspace members and not) and its not inviting this user

Yes please do, thanks!

As you said we should be able to invite new members to the workspace chats by „mentioning them”.
Admin and default member of the workspace chat are not able to leave or be removed from this workspace chat, but in the same time this „invited” user should be able to leave and admin/default member should be able to remove him, right?

Correct.

Still on track for tomorrow or Wed?

@quinthar if everything is fine with PR - yes, we can finish tomorrow.
I opened a PR day before yesterday, but no reviews for now! Also yesterday updated a security section and tested manually backend.
Will create an issue now and waiting for the reviews.
Also I will be OOO tomorrow and on Thursday(2 days) because of the sick leave and if something urgent will appear @rezkiy37 can help with finishing it before I come back!

New issues created from this ticket:

Add possibility to leave from workspace
Add users to workspace chat by mentioning them.
Add possibility to remove invited user from workspace chat and add possibility for invited user to leave from the workspace chat

Sounds good, thanks!

What remains to finish this?  I saw "I opened a PR day before yesterday, but no reviews for now" who is this waiting on?  What do they need to do, and when will it be done?

@aimane-chnaif yes PR is ready for review!
For testing can we please confirm that the rules we added in README.md are working as expected in the App. I'll update Tests section accordingly.
Also, Reviewing label was removed because that is not the only PR required for this issue or that PR does not completely fixes/closes this issue 😄

PR to update Security settings in README is merged

Going to close this issue now given we have two children issues https://github.com/Expensify/App/issues/35391 and  https://github.com/Expensify/App/issues/35286 in vip-vsb and wave-8 respectively


Service Bus browser support

I'm after sending message to azure service bus using the browser and I can't seem to find an example here.
I have used node.js one which uses connection string but I'm guessing I don't want it to be exposed.
So my question is: Is this supported and if so how? (just like for blob storage here)

Thanks for asking, @kedzior-io!

I have used node.js one which uses connection string but I'm guessing I don't want it to be exposed.

The quickstart docs for storage rely on the SAS token, similar support is not available (yet) for the Service Bus service. So, you'd have to rely on the connection strings to use the library in the browsers.
Here's the guide on bundling Azure SDKs for a browser (same way as mentioned in the quickstart docs for storage).
Here are the samples you can look at for @azure/service-bus

Samples for version 7.0.0-preview.5(preview)
Samples for version 1.1.x(stable)

You can pick code from the above samples, bundle the code to run them in the browser.
Let me know if you encounter any problem doing the above.

Thanks @HarshaNalluru !
I managed to getting working with the @azure/service-bus just after writing this question.

So, you'd have to rely on the connection strings to use the library in the browsers.

So it is ok to have that connection string sent to the browser? How do I limit it to my application only?
(with azure storage I use SAS and set CORS which apparently the way to go).
Seems to me that the way to go is JavaScript client > Azure Function > Service Bus

So it is ok to have that connection string sent to the browser? How do I limit it to my application only?

If the connection string goes public, anyone would be able to use it and the requests would be charged. It is advisable to keep the connection string secure. My suggestion would be to use the service-bus library on your server-side application and keep the connection string safe.
Also, through the Azure portal, the connection strings can be created specifically to the queue/topic with limited access to just allow "Send" or just allow "Receive" operations which would be better at mitigating the risk of exposing the whole service-bus namespace.


Side Navigation customization

Changes

#1368 - Improving customization of SideNavigation component.
Testing

Will be tested thru unit & visual testing.
Docs

TBD

Reverted the changes that were meant for another PR. Should work now


List item .image styles affecting "file image outline" icon

(small issue) I found one of my list items was out of alignment. HTML:

Packing list

nopic_192.gif

Packing list

tizenfordummies.pdf

The culprit turned out to be this rule in list.import.less:
.ui.list .list > .item > .image:not(:only-child):not(img),
.ui.list > .item > .image:not(:only-child):not(img) {
  padding-right: @imageDistance;
}

Same thing happens with a "block header" with an icon of "image something something", there's some mixing up happening between styles.

This is not stale! Still an issue.

I think, this is fixed with the shortly upcoming 2.7.5 of Fomantic-UI by https://github.com/fomantic/Fomantic-UI/pull/714
See your adjusted example: https://jsfiddle.net/kxm2z8ab/


Error: Unrecognized data type for field

Trying to use the plugin but getting unrecognized data type each time...

Needs more info to come close to helping. Ideally a failing example.

`// User with a secret
var EncryptedField = require('sequelize-encrypted');
module.exports = function (sequelize, DataTypes) {
const key = process.env.DB_KEY;
const encryptedFields = EncryptedField(sequelize, key);
const User = sequelize.define('user', {
id: {
  type: DataTypes.INTEGER,
  autoIncrement: true,
  primaryKey: true,
},

// the encrypted vault (BLOB) that contains all encrypted fields
encryptedVault: encryptedFields.vault('encryptedVault'),

// the virtual getter/setter for the encrypted secret
secret: encryptedFields.field('secret'),

// the server seed hash
name: DataTypes.STRING,

});
return User;
};`
and the error is
app-0 Error: Unrecognized data type for field encryptedVault app-0     at null.<anonymous> (/vagrant/node_modules/sequelize/lib/model.js:95:13) app-0     at /vagrant/node_modules/lodash/lodash.js:12666:23 app-0     at /vagrant/node_modules/lodash/lodash.js:4389:15 app-0     at baseForOwn (/vagrant/node_modules/lodash/lodash.js:2652:24) app-0     at Function.mapValues (/vagrant/node_modules/lodash/lodash.js:12665:7) app-0     at new Model (/vagrant/node_modules/sequelize/lib/model.js:78:43) app-0     at Sequelize.define (/vagrant/node_modules/sequelize/lib/sequelize.js:625:15) app-0     at module.exports.DataTypes (/vagrant/server/db/models/User.js:12:32) app-0     at Sequelize.import (/vagrant/node_modules/sequelize/lib/sequelize.js:685:30) app-0     at /vagrant/server/db/index.js:22:33 app-0     at Array.forEach (native) app-0     at Object.<anonymous> (/vagrant/server/db/index.js:21:27) app-0     at Module._compile (module.js:409:26) app-0     at Object.Module._extensions..js (module.js:416:10) app-0     at Module.load (module.js:343:32) app-0     at Function.Module._load (module.js:300:12)

@pukhalski you must include Sequelize
const Sequelize = require('sequelize');


Feature/templated panel.math property

Fix #25

Seeing #16 a little late but I think it would be better to postpone this merge and apply this feature on top of the refactor done in #16

HI @ssirois I'll be testing #16 request and when merged into master successfully I will be testing your pull and provide feedback.


ListHeaderComponent should not be considered the top of a list view?

Is this a bug report?
Depends on whether this is intended behavior.
Have you read the Contributing Guidelines?
Yes.
Environment
Environment:
OS: macOS High Sierra 10.13.3
Node: 9.4.0
Yarn: 1.3.2
npm: 5.6.0
Watchman: 4.9.0
Xcode: Xcode 9.2 Build version 9C40b
Android Studio: 3.0 AI-171.4443003
Packages: (wanted => installed)
react: 16.2.0 => 16.2.0
react-native: ^0.53.0 => 0.53.0
Target Platform: iOS (11.2)
Steps to Reproduce

Create a SectionList
Add a ListHeaderComponent to the SectionList

Expected Behavior
The ListHeaderComponent would initially be hidden, and would only be revealed by scrolling up, similar to a search or filter bar on iOS. Scrolling to the top of the list (for example by tapping the status bar) would scroll to the top of the first item in the list, not to the top of the header component.
Actual Behavior
The ListHeaderComponent is rendered as if it were the first item in the list, and tapping the status bar scrolls to the top of the header component. I assume this is not the intended behavior, since the same can be achieved by using a different section on top of the list view with its own renderItem function. If the ListHeaderComponent is implemented the way I expected, it would make it much easier to implement custom search bars, filter bars, and the like.
Reproducible Demo
https://snack.expo.io/BJDvzFwBz

It does not look like the component is meant to behave in the way you expect it to. The docs only claim it will be rendered at the top of all other items: https://facebook.github.io/react-native/docs/flatlist.html#listheadercomponent
Closing as the issue does not appear to describe a bug.


Add 'disabled' prop to options for FormSelect

This fix adds disabled prop to options of <FormSelect> component, which is mentioned in #177 .
I didn't include updates for the documentation. Because I feel that the example code of <FormSelect> is not enough to me. It doesn't show a shape of options prop.
<FormSelect options={[...]} firstOption="Select" onChange={this.handleSelect} />

How about following example code? It's somewhat ugly but I have no idea to show this.
Please let me know your comment 😃
const controlOptions = [
	{ label: 'Caramel',    value: 'caramel' },
	{ label: 'Chocolate',  value: 'chocolate' },
	{ label: 'Strawberry', value: 'strawberry' },
	{ label: 'Vanilla',    value: 'vanilla', disabled: true }
];

// ...

<FormSelect options={controlOptions} firstOption="Select" onChange={this.handleSelect} />

I noticed #174 is related this PR.

Thanks @kuy!


lpinfo -m timeout parallelisation of PPD Generators.

This PR is with respect to issue Issue https://github.com/OpenPrinting/cups/issues/65 .
driverless was taking too much time, so created a separate thread to call the PPD generators while waiting for timeout in the main thread. If the PPD is not returned within the timeout then terminated that call and looped over.
I have created separate functions regarding this. Requires some testing.
Commit https://github.com/OpenPrinting/cups/pull/79/commits/1204a8b7bd3ba83c4d73287a9fec4efdfe4c193c
@michaelrsweet @tillkamppeter Please review this.

Hi @pranjanpr ,
your PR is created for OpenPrinting:branch-2.2, but your pranjapr:master contains the commit from OpenPrinting:master branch. It looks like a mistake, IMO you wanted to created a PR for OpenPrinting:master, not for OpenPrinting:branch-2.2, would you mind fixing the PR?
Because your PR contains many other commits which aren't in branch-2.2 and makes it difficult to review - not mentioning if it would accidentally merged now, those commits would be into branch-2.2, but not into master.
Thank you in advance!

@zdohnal
Yes I think I have made a mistake. I will correct it ASAP. Thanks for pointing out.

@pranjanpr no problem, thanks for looking into it! :)


Update Enabling_K3s.md kubeconfig value

Summary and Scope

Fixes # Update KUBECONFIG value

Issue Type

Docs Pull Request : https://jira-pro.it.hpe.com:8443/browse/CASMTRIAGE-6515

Update the KUBECONFIG value in example given.
Prerequisites

[] I have included documentation in my PR (or it is not required)
[] I tested this on internal system (x) (if yes, please include results or a description of the test)

Idempotency

Risks and Mitigations

Requesting feedback / review from @alanm-hpe .
Thanks.