Made some additions to elliminate the following security issues:

Gia sou, Antoni.
Ime o Stelios Mavridis(mavridis@csd.uoc.gr).
Ida to mail sto ugrads, ke mou kinise tin aporia.(Opensource&&Csd => woot?)
Nwmizw pws vrika kapia thematakia security, ke pira to tharos na ta diwrthoso wste na min anoixoume 'trypes' sto idrima(arketes exi idi ;) ).
Pes mou pia ine i apopsi sou gia tis allages.
Filika Stelios.

JavaScript Cryptography is known to have a lot of problems and currently few libraries are audited (they all use openssl binaries and a Binary to JavaScript executor). SHA-256.js isn't one of them AFAIK.
The script ensures that at all times the connection is over HTTPS, otherwise it drops the connection. Currently, if I send my password: "hello" or its sha256 hash doesn't really benefit malicious logins in the sense that if an attacker captures the request (which is the MitM scenario), and replays the request, both are going to let him in. The only downside is that if he captures the request in plain-text, he may see the user's password, but for most security teams in the industry this is a more acceptable solution that using JavaScript Crypto (!).. If you check the login pages of Facebook, Twitter, Google, Wordpress, ... they all avoid (last time I checked) JavaScript Hashing and send the password by trusting HTTPS and their other mechanisms.
I wanted to implement a hash check (JavaScript checks if SHA-256 of selected file in browser matches the SHA-256 of the uploaded file in the server), but didn't do it since JS Crypto isn't the best thing ever made.
Also, by uploading any number of files as another user, you do not cause any problem, in a sense that:

The user's quota is not affected
You need ssh access as the user himself to view the files
The files aren't executable

In terms of the session implementation I don't think it benefits somehow the solution since if someone has READ access to the file and can see the SHA-256 in the variable, he can send that in the request. Also, it may not allow you login some times if I'm not mistaken.
TL;DR
The current program uses industry-common login and since the only request submitted requires also your password, it may not have exploitable CSRF vulnerabilities. Also, it's a JS-Free Solution.. ;-)
Thanks for helping and let me know of your opinion.

Stelios' approach also takes in account the session ID to avoid using
the transmitted hash later.  In that sense he narrows the time window in
which a replay attack is plausible.
I don't agree that bypassing the log in process does not cause
problems...

One could deploy a DoS attack by uploading huge files.
At some time it would be convenient to be able to also read/download
files from the interface
What if they are scripts!?

The industry-common approaches are not necessarily good (see
visa/mastercard contactless payments)

If the uploaded files are scripts, then they can't be executed unless the user specifically goes and executes them using ssh. The web server cannot execute / run files from the STORAGE folder.
Also, in case of the replay attack, if the user has a successful Man In The Middle position between the Web Server and the User, despite https, then he can server any content he wants, including any JavaScript he wants, rendering the entire mechanism useless. He can simply replace the page served with the page the current script serves, and send the password in plaintext. He can even use browser exploits and hack the victim's computer.. These are problems generally solved by HTTPS and its extensions in the industry.. I don't see a way that Stelios' implementation offers any additional protection in a case the attacker has MitM position and I also don't see that in the case that the attacker doesn't have a MitM position. On the contrary, the JavaScript crypto can introduce more risks..

OK, I checked the code and since you do not allow overwrites it looks safe.
Considering it operates always over HTTPS you are right.  The only benefit I see is that in his approach he never transfers the plaintext password to the webserver.

This doesn't provide any security since if you think about it, if someone controls the server, he can make the user send the plaintext password. If he doesn't, then he can't get the password.

Hello zakka,DaKnOb.
The intention of the patch was to not send the password in plain-text and also avoid any replay attacks.
Since i am hashing the concatenation of the password hash and the nonce(session_id) there is no (easy) way a man-in-the-middle to be able to create an appropriate hash without knowing the password hash and the session_id.
The password hash can be easily read from the .php file,perhaps we could move it to a different (and protected) file?
The session id seems to be and 128-bit value(http://www.perlmonks.org/?node_id=214293).
I think that for the foreseeable future we are safe from replay attacks, since the nonce changes on every request.
" if someone controls the server":All your bases are belong to us?
ps:About the sha256.js.It was formated that way in the original source, regardless i will reformat it and update.

Hmmm, that's true!!!

@dmcbeing
Let's assume that an attacker has Man In The Middle position. That means he can not only listen to all the traffic, but also modify it. That is, he can remove all the JavaScript and make the user submit his plaintext password. Good guys lose, he has the password.
Let's assume that an attacker has Man In The Middle position but can only read the content of the connection (Don't know how, but whatever.. :P). That means he has access to the PHPSESSID cookie that is essentially the session identifier, since it's sent back and forth. He also has access to the contents of the session JavaScript variable. This makes the nonce useless, since the attacker already knows it.
HTTPS does a good way protecting the user against impersonation attacks / and/or data modification attacks and also prevents replay attacks since it requires a handshake.
Additionally, this is a PHP Session ID, that remains the same until the user quits their browser in most configurations, so it won't be different every time but every time the browser restarts.

@DaKnOb I must admit that you are correct in that HTTPS is sufficient on its own.I noticed https after this discussion.
As for the session id create a new session id on every transaction, so i at least got that one right ;-).
Thanks for the feedback.

Thanks for opening this discussion.. :-)


[BUG] Documentation - Broken link to hosted dropdown

🐞 Bug report
Description
The link to hosted dropdown in dropdown directive page leads nowhere.

Yeah, it should be components not directives in that link, thank you for spotting it. Will you make a PR?

I have opened PR #740


CSS Modules local class names for Create React App

I though it would be pedagogical to use CSS Modules (locally scoped selectors), in a light version where the non-standard local: directive from the webpack plugin css-loader is being used. If people start making components from Create React App, with this they can’t miss how to do locally scoped css.
The point is that one way or another, we will need this and it is not going to be standard

Even if we do have .module.css files in 2.0, we will need a non-standard directive similar to :local and :global
We will need some non-standard directives should we use webpack or not
Otherwise local and global styles have to be in separate files
It does not seem w3c is going to help with standardization at the moment. The path there seems to be  :scope which requires style elements in the middle of markup, eg. at the top of a component, regions or :host. You would hope they took a look at ECMAScript Symbols and found a simpler approach
besides the :scope aspect, it can also be foreseen that css is going to look even more like css in the future (ie. no scss cssinjs fancy-framework-dying-off-like-flies…)
Styling React components is not going to be standard. Either some clever mapping of possibly standards-compliant css values over to ECMAScript like css-loader, or a custom react-css-loader.

This was obviously made to work from the extensive work from the last 7 months in #2278 #2285 by @ro-savage slated for version 2.0 at some undetermined future time
harsh words on this topic are in #90
This here is best evidence at the moment

I kind of need an ELI5 for you reasoning here. But I'll do my best

With the current css modules PR #2285. Standard CSS (that is global css) is imported as per usual, the same way it currently done in Create-React-App.  Adding scoped css is entirely optional and only happens when you use import style from 'mystyles.module.css' and name the file [something].module.css. I can't see any reason to use :local and :global.

While our config is reliant on webpack, so is the majority of the CRA config. It will all need to be rewritten if we move to another bundler/module loader.

css modules is non-standard and as far as I am aware there a no plans to change that.

Until something is released by w3c or someone else. No point trying to predict the future in CRA.

CRA already supports some css-in-js out of the box, if someone chooses to use that. Adding CSS Modules is simply because there are a large percentage of people who use cssmodules and currently they aren't able to use CRA out of the box.

For those reasons, I don't really understand the purpose of this PR. But as I said, I didn't really understand your initial reasoning and may be totally wrong.

The purpose of this PR is to use proper component styling now.
To demonstrate CSS Modules ahead of Create React App version 2.0

This is also right for those who wants sub-second interactive on an infinitely complex site by server-side rendering inlined css into the html and async all scripts.
Yes, React can
And the use of data attributes and bracket selectors for per-element styling


NF/RF: rm -> Repo.rm() (and a few unrelated tests)

Notable changes:

introduce Repo().rm() (with tests)
convert rm to use Repo().rm()
add tests for a few corner cases in fsck() and commit()

As with the other conversion, the tests for the command rm have been left intact. They will be address later when the logging overhaul happens.

Codecov Report
Base: 78.50% // Head: 78.93% // Increases project coverage by +0.43% :tada:

Coverage data is based on head (42575a5) compared to base (b8a1e96).
Patch coverage: 97.95% of modified lines in pull request are covered.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #234      +/-   ##
==========================================
+ Coverage   78.50%   78.93%   +0.43%
==========================================
  Files          21       21
  Lines        1368     1377       +9
  Branches      265      272       +7
==========================================
+ Hits         1074     1087      +13
+ Misses        241      239       -2
+ Partials       53       51       -2

Impacted Files
Coverage Δ

onyo/commands/rm.py
82.14% <93.75%> (-8.25%)
:arrow_down:

onyo/lib/onyo.py
97.91% <100.00%> (+2.26%)
:arrow_up:

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Update tutorial-advanced-app.md

Clearer instructions on what to look for in main-local.php when configuring the db param

for reference: https://github.com/yiisoft/yii2/blob/master/apps/advanced/environments/dev/common/config/main-local.php#L4

Thanks!


Minor Backwards Compatability Issue with IncludeXmlComments

We have a slew of projects that uses Swashbuckle to describe their APIs.
To not have to write all the configuration code again and again we have put most of the swashbuckle configuration in a shared library which depends on Swashbuckle.
I tried upgrading one of our services to Swashbuckle 2.4.0 (it was 2.3.0) and got a missingmethodexception for IncludeXmlComments(string). The thing is that our shared library is still 2.3.0 and uses includexmlcomments based on a string sent from the API. Since 2.4.0 has added an optional parameter about including controller xmlcomments so the method now looks like IncludeXmlComments(string, bool) i get the exception.
Its not a huge deal, i will just change my shared library, but figured I might point it out regardless.

Version 2.4.0 does not seem to have that method signature:
It was added in commit da987073ff212e1ed60b8d0b35798b05fe4cdfe8.

Hmm weird, maybe I got one of the myget packages in an error. Disregard my
issue then.
But if its not changed then it will become a minor breaking change :)
On 25 April 2018 at 16:10, Adam Hellberg<EMAIL_ADDRESS>wrote:

Version 2.4.0 does not seem to have that method signature:
https://github.com/domaindrivendev/Swashbuckle.AspNetCore/blob/v2.4.0/src/Swashbuckle.AspNetCore.SwaggerGen/Application/SwaggerGenOptions.cs#L243-L259
It was added in commit da98707
https://github.com/domaindrivendev/Swashbuckle.AspNetCore/commit/da987073ff212e1ed60b8d0b35798b05fe4cdfe8
.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/domaindrivendev/Swashbuckle.AspNetCore/issues/702#issuecomment-384300849,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABUH_tZ4i1XMp5_ZC7Ga-6FHgxQ4nu0Zks5tsIPjgaJpZM4Tiy3D
.

--
Esben Bach
cand.scient


[Bug]: sidenav appearing on application load on mobile

Relevant scope
angular application
Description
On mobile screens, the expected visual behavior is to hide the sidenav by default.
But by landing/refreshing the application, the sidenav quickly appears for a second.
About the analysis, I could not reproduce it so far by creating a brand new project with Angular 17 and the material navigation schematic used.

fixed


Added password mapper interface

This adds a mapper interface so any database can tie into this module.

No response; closing


Structured Config object

While I was working on adding the functional test suite, I encountered a lot of scenarios where you could provide stacker with an invalid config file and get back ugly and confusing errors.
This implements a structured stacker.config.Config object, which would replace the unstructed dict returned from parse_config that we pass to stacker.Context. stacker.config.Config is a first class object that represents the stacker config format in Python, and can be pre-validated for sanity (e.g. namespace key is provided, stacks isn't empty, each stack has a name and class_path, etc).
You could also use this as a consumer of stacker to generate valid stacker config files (almost like troposphere for stacker). For example:
#!/usr/bin/env python

from stacker.config import dump, Config, Stack

vpc = Stack({
    "name": "vpc",
    "class_path": "blueprints.VPC"})

bastion = Stack({
    "name": "bastion",
    "class_path": "blueprints.Bastion",
    "variables": {
        "VpcId": "${output vpc::VpcId}"}})

config = Config()
config.namespace = "prod"
config.stacks = [vpc, bastion]

config.validate()

print dump(config)

$ ./gen.py | stacker build -

@phobologic I've updated this to base the config off of schematics, which makes it really clean, and will make it really easy to render a pretty list of validation errors. Good call.
If you like the overall Config type, I can add another commit to this that swaps out the internals to use the new structured Config type.

Alrighty, added a second commit to this that swaps the internals over to the structured config object. This commit is basically the smallest change that can be made to make both test suites pass (basically just changing parse_config to return Config instead if dict and fixing any failing tests).
I'll follow up with a third commit that cleans up unit tests so that everything is passing a structured Config to Context instead of a dict.

Added a third commit to this that cleans up unit tests to ensure that we're always passing in structured Config objects instead of dict's.
@phobologic if you wanna give this a round of review, I'm pretty happy with it.

Also, I haven't done much to try and make the InvalidConfig exception pretty, since we don't have a very good existing method for showing errors that don't involve stack traces. Right now, InvalidConfig just gets raised.
For example, here's the error when my config specifies a stack with no name:
   $ stacker build /dev/fd/63
   [2017-07-21T19:16:48] Using Default AWS Provider
   Traceback (most recent call last):
     File "/Users/ejholmes/src/github.com/remind101/stacker/venv/bin/stacker", line 6, in <module>
       exec(compile(open(__file__).read(), __file__, 'exec'))
     File "/Users/ejholmes/src/github.com/remind101/stacker/scripts/stacker", line 8, in <module>
       stacker.configure(args)
     File "/Users/ejholmes/src/github.com/remind101/stacker/stacker/commands/stacker/__init__.py", line 39, in configure
       validate=True)
     File "/Users/ejholmes/src/github.com/remind101/stacker/stacker/config/__init__.py", line 51, in render_parse_load
       config.validate()
     File "/Users/ejholmes/src/github.com/remind101/stacker/stacker/config/__init__.py", line 281, in validate
       raise exceptions.InvalidConfig(e.errors)
   stacker.exceptions.InvalidConfig: {'stacks': {0: {'name': ConversionError([ErrorMessage(u'This field is required.', None)])}}}

It's still better than before, since the error is a little clearer (stacker at index 0 has an error on name).

Fixed both comments. I'll go ahead and squash this then merge.


replace old ui image to new ui image

replace old ui image to new ui image
that's all

Codecov Report

Merging #1627 into master will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master    #1627   +/-   ##
=========================================
  Coverage     59.64%   59.64%
  Complexity      935      935
=========================================
  Files           142      142
  Lines          4730     4730
  Branches        661      661
=========================================
  Hits           2821     2821
  Misses         1601     1601
  Partials        308      308

Continue to review full report at Codecov.

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


Writing text directly to the headset

I am wondering if it is possible to write the text "Step Back" directly to the HMD while using the SteamVR_Fade.View() effect or do I need to try something completely different.

I don't think the fade script supports text. But you should try posting in the steamvr developer forums instead, this is a place for problems with the plugin. https://steamcommunity.com/app/250820/discussions/7/


Event loop

How can I force workerman use EV event loop?
Worker::$globalEvent = new Ev();

is Works , but in php index.php status , it shown React as event loop
Also we have this error in this way

SendBufferToWorker fail. The connections between Gateway and BusinessWorker are not ready.

This feature is not implemented yet.

Do you have plan to implement it?

Yes ,after a few weeks.

Any update?

walkor from 29 days ago
any update ?

I have no time to do that.
This is an open source project, you can send PR if you need.

tnx

hi walkor
any update ????

Any update?

Now you can force workerman use EV like this.
use Workerman\Worker;
// Set eventLoopClass for workerman.
Worker::$eventLoopClass = '\Workerman\Events\Ev';
$worker = new Worker('http://<IP_ADDRESS>:1234');
$worker->on....


Clean csc-courier-ssapp

Clean csc-courier-ssapp from unnecessary files that were added from csc-sponsor-ssapp

Please don't forget to add the new cscServices bundle in index.html


File Per Process IO, performance summary in docs, new example case.

This PR adds the option to use file per process IO when running on very large numbers of GPUs where it was found that shared file IO wasn't very performant.
It also adds a performance summary page to the documentation that was suggested in the MFC Slack.
It also adds improved error messaging for namelist read fails in m_start_up in all three modules.
Lastly, it adds the Riemann test problem requested in #174 .

can you also fix #255

The requested changes are done. I'm having trouble getting the documentation to build locally so I can see if it actually updates on the website, but I'm working on it.

@sbryngelson This should be able to merge unless you really want this PR to take care of #255. I was talking to Henry about it, and he said, and I quote, "This is a me-problem, not a you-problem"

@sbryngelson This should be able to merge unless you really want this PR to take care of #255. I was talking to Henry about it, and he said, and I quote, "This is a me-problem, not a you-problem"

Lol. Fine with me.


Add files via upload

Lunar Illumination function removed for inconsistent results.

Lunar Illumination function removed for inconsistent results.


[theme] Fix pseudo class overridden in variants

[x] I have followed (at least) the PR section of the contributing guide.

This is a continuation of this issue: https://github.com/mui-org/material-ui/issues/26944
Problem:
You can see that the styles of pseudo classes of variants are not merged correctly here: https://codesandbox.io/s/musing-darkness-2cd8d?file=/src/App.js:119-613
Solution: Following @oliviertassinari 's suggestion (https://github.com/mui-org/material-ui/issues/26944#issuecomment-869223488), using an array to store variant styles rather than an object does the fix.
@@ -33,7 +33,7 @@ const getVariantStyles = (name, theme) => {

 const variantsResolver = (props, styles, theme, name) => {
   const { styleProps = {} } = props;
-  let variantsStyles = {};
+  const variantsStyles = [];
   const themeVariants = theme?.components?.[name]?.variants;
   if (themeVariants) {
     themeVariants.forEach((themeVariant) => {
@@ -44,7 +44,7 @@ const variantsResolver = (props, styles, theme, name) => {
         }
       });
       if (isMatch) {
-        variantsStyles = { ...variantsStyles, ...styles[propsToClassKey(themeVariant.props)] };
+        variantsStyles.push(styles[propsToClassKey(themeVariant.props)]);
       }
     });
   }

Perfect! Let’s add test for this use-case, we can create a simple component that mimic the behavior of the button.

@hbjORbj Prefer this syntax:

It allows closing the underlying issue once the PR is merged.


Remove delivery_build cookbook

The delivery_build cookbook it's now shipped with the delivery package as of 0.3.42.

This is awesome! Although I just need to stand a new cluster really quick to see it working, what I am concerned about is the dependencies that delivery_build have like git.

Yup.. I was right! Fix applied.. ^^^ :smile:
  * machine[delivery-server-ssh] action converge
    [delivery-server-ssh] Starting Chef Client, version 12.3.0
                          resolving cookbooks for run list: ["delivery-cluster::delivery"]

                          ================================================================================
                          Error Resolving Cookbooks for Run List:
                          ================================================================================

                          Missing Cookbooks:
                          ------------------
                          The following cookbooks are required by the client but don't exist on the server:
                          * git

                          Expanded Run List:
                          ------------------
                          * delivery-cluster::delivery

:shipit:

Works pretty good.. More output for the record:
[root@delivery-server ~]# delivery-ctl reconfigure
Starting Chef Client, version 12.0.3
resolving cookbooks for run list: ["delivery"]
[2015-05-12T21:42:26+00:00] WARN: Cookbook 'local-mode-cache' is empty or entirely chefignored at /opt/delivery/embedded/cookbooks/local-mode-cache
[2015-05-12T21:42:26+00:00] WARN: Cookbook 'local-mode-cache' is empty or entirely chefignored at /opt/delivery/embedded/cookbooks/local-mode-cache
[2015-05-12T21:42:26+00:00] WARN: Cookbook 'local-mode-cache' is empty or entirely chefignored at /opt/delivery/embedded/cookbooks/local-mode-cache
[2015-05-12T21:42:26+00:00] WARN: Cookbook 'local-mode-cache' is empty or entirely chefignored at /opt/delivery/embedded/cookbooks/local-mode-cache
[2015-05-12T21:42:26+00:00] WARN: Cookbook 'local-mode-cache' is empty or entirely chefignored at /opt/delivery/embedded/cookbooks/local-mode-cache
[2015-05-12T21:42:26+00:00] WARN: Cookbook 'local-mode-cache' is empty or entirely chefignored at /opt/delivery/embedded/cookbooks/local-mode-cache
[2015-05-12T21:42:26+00:00] WARN: Cookbook 'local-mode-cache' is empty or entirely chefignored at /opt/delivery/embedded/cookbooks/local-mode-cache
[2015-05-12T21:42:26+00:00] WARN: Cookbook 'local-mode-cache' is empty or entirely chefignored at /opt/delivery/embedded/cookbooks/local-mode-cache
[2015-05-12T21:42:26+00:00] WARN: Cookbook 'local-mode-cache' is empty or entirely chefignored at /opt/delivery/embedded/cookbooks/local-mode-cache
[2015-05-12T21:42:26+00:00] WARN: Cookbook 'local-mode-cache' is empty or entirely chefignored at /opt/delivery/embedded/cookbooks/local-mode-cache
[2015-05-12T21:42:26+00:00] WARN: Cookbook 'local-mode-cache' is empty or entirely chefignored at /opt/delivery/embedded/cookbooks/local-mode-cache
[2015-05-12T21:42:26+00:00] WARN: Cookbook 'local-mode-cache' is empty or entirely chefignored at /opt/delivery/embedded/cookbooks/local-mode-cache
[2015-05-12T21:42:26+00:00] WARN: Cookbook 'local-mode-cache' is empty or entirely chefignored at /opt/delivery/embedded/cookbooks/local-mode-cache
[2015-05-12T21:42:26+00:00] WARN: Cookbook 'local-mode-cache' is empty or entirely chefignored at /opt/delivery/embedded/cookbooks/local-mode-cache
[2015-05-12T21:42:26+00:00] WARN: Cookbook 'local-mode-cache' is empty or entirely chefignored at /opt/delivery/embedded/cookbooks/local-mode-cache
[2015-05-12T21:42:26+00:00] WARN: Cookbook 'local-mode-cache' is empty or entirely chefignored at /opt/delivery/embedded/cookbooks/local-mode-cache
[2015-05-12T21:42:26+00:00] WARN: Cookbook 'local-mode-cache' is empty or entirely chefignored at /opt/delivery/embedded/cookbooks/local-mode-cache
[2015-05-12T21:42:26+00:00] WARN: Cookbook 'local-mode-cache' is empty or entirely chefignored at /opt/delivery/embedded/cookbooks/local-mode-cache
[2015-05-12T21:42:26+00:00] WARN: Cookbook 'local-mode-cache' is empty or entirely chefignored at /opt/delivery/embedded/cookbooks/local-mode-cache
[2015-05-12T21:42:26+00:00] WARN: Cookbook 'local-mode-cache' is empty or entirely chefignored at /opt/delivery/embedded/cookbooks/local-mode-cache
[2015-05-12T21:42:26+00:00] WARN: Cookbook 'local-mode-cache' is empty or entirely chefignored at /opt/delivery/embedded/cookbooks/local-mode-cache
[2015-05-12T21:42:26+00:00] WARN: Cookbook 'local-mode-cache' is empty or entirely chefignored at /opt/delivery/embedded/cookbooks/local-mode-cache
[2015-05-12T21:42:27+00:00] WARN: Cookbook 'local-mode-cache' is empty or entirely chefignored at /opt/delivery/embedded/cookbooks/local-mode-cache
[2015-05-12T21:42:27+00:00] WARN: Cookbook 'local-mode-cache' is empty or entirely chefignored at /opt/delivery/embedded/cookbooks/local-mode-cache
[2015-05-12T21:42:27+00:00] WARN: Cookbook 'local-mode-cache' is empty or entirely chefignored at /opt/delivery/embedded/cookbooks/local-mode-cache
[2015-05-12T21:42:27+00:00] WARN: Cookbook 'local-mode-cache' is empty or entirely chefignored at /opt/delivery/embedded/cookbooks/local-mode-cache
[2015-05-12T21:42:27+00:00] WARN: Cookbook 'local-mode-cache' is empty or entirely chefignored at /opt/delivery/embedded/cookbooks/local-mode-cache
[2015-05-12T21:42:27+00:00] WARN: Cookbook 'local-mode-cache' is empty or entirely chefignored at /opt/delivery/embedded/cookbooks/local-mode-cache
[2015-05-12T21:42:27+00:00] WARN: Cookbook 'local-mode-cache' is empty or entirely chefignored at /opt/delivery/embedded/cookbooks/local-mode-cache
[2015-05-12T21:42:27+00:00] WARN: Cookbook 'local-mode-cache' is empty or entirely chefignored at /opt/delivery/embedded/cookbooks/local-mode-cache
[2015-05-12T21:42:27+00:00] WARN: Cookbook 'local-mode-cache' is empty or entirely chefignored at /opt/delivery/embedded/cookbooks/local-mode-cache
[2015-05-12T21:42:27+00:00] WARN: Cookbook 'local-mode-cache' is empty or entirely chefignored at /opt/delivery/embedded/cookbooks/local-mode-cache
[2015-05-12T21:42:27+00:00] WARN: Cookbook 'local-mode-cache' is empty or entirely chefignored at /opt/delivery/embedded/cookbooks/local-mode-cache
[2015-05-12T21:42:27+00:00] WARN: Cookbook 'local-mode-cache' is empty or entirely chefignored at /opt/delivery/embedded/cookbooks/local-mode-cache
[2015-05-12T21:42:27+00:00] WARN: Cookbook 'local-mode-cache' is empty or entirely chefignored at /opt/delivery/embedded/cookbooks/local-mode-cache
[2015-05-12T21:42:27+00:00] WARN: Cookbook 'local-mode-cache' is empty or entirely chefignored at /opt/delivery/embedded/cookbooks/local-mode-cache
Synchronizing Cookbooks:
  - delivery
  - enterprise
  - runit
  - build-essential
  - yum
  - yum-epel
Compiling Cookbooks...
Recipe: delivery::omnibus
  * directory[/etc/delivery] action create
    - change owner from 'delivery' to 'root'
    - restore selinux security context
  Converging 86 resources
Recipe: delivery::license_check
  * directory[/var/opt/delivery/license] action create (up to date)
  * template[/var/opt/delivery/license/delivery-lk-20150407.pub] action create (up to date)
  * ruby_block[verify license file exists] action run
    - execute the ruby block verify license file exists
  * execute[untar the license file] action run (skipped due to not_if)
  * ruby_block[verify license signature] action run
    - execute the ruby block verify license signature
  * log[license verified OK] action write

Recipe: delivery::omnibus
  * directory[/etc/delivery] action nothing (skipped due to action :nothing)
Recipe: delivery::logrotate
  * directory[/etc/delivery/logrotate.d] action create
    - change owner from 'delivery' to 'root'
    - restore selinux security context
  * template[/etc/delivery/logrotate.conf] action create
    - change owner from 'delivery' to 'root'
    - restore selinux security context
  * template[/etc/cron.hourly/delivery_logrotate] action create (up to date)
Recipe: delivery::omnibus
  * execute[Upload Cookbook Dependency => delivery_build] action run
    - execute knife cookbook upload delivery_build --cookbook-path /opt/delivery/embedded/cookbooks --server-url https://<IP_ADDRESS>/organizations/ssh --user delivery --key /etc/delivery/delivery.pem --config /etc/chef/client.rb --force
Recipe: delivery::users
  * log[Creating user: delivery] action write

  * log[home: /opt/delivery/embedded] action write

  * log[path: /opt/delivery/bin:/opt/delivery/embedded/bin:/opt/delivery/bin:/opt/delivery/embedded/bin:/usr/local/sbin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/bin] action write

  * user[delivery] action create (up to date)
  * group[delivery] action create (up to date)
  * directory[/opt/delivery/embedded] action create
    - change owner from 'root' to 'delivery'
    - restore selinux security context
  * log[creating git user] action write

  * user[git] action create (up to date)
  * directory[/var/opt/delivery/home/git] action create (up to date)
  * directory[/var/opt/delivery/home/git/.ssh] action create (up to date)
  * file[/var/opt/delivery/home/git/.ssh/authorized_keys] action create (up to date)
Recipe: delivery::omnibus
  * directory[/opt/delivery] action create (up to date)
  * directory[/var/log/delivery] action create (up to date)
Recipe: enterprise::runit_upstart
  * execute[initctl stop opscode-runsvdir] action run (skipped due to only_if)
  * file[/etc/init/opscode-runsvdir.conf] action delete (up to date)
  * template[/etc/init/delivery-runsvdir.conf] action create (up to date)
  * execute[initctl status delivery-runsvdir] action run
    - execute initctl status delivery-runsvdir
  * execute[initctl start delivery-runsvdir] action run (skipped due to only_if)
Recipe: delivery::postgresql
  * user[chef-pgsql] action create (up to date)
  * directory[/var/opt/delivery/postgresql] action create (up to date)
  * file[/var/opt/delivery/postgresql/.profile] action create (up to date)
  * directory[/var/log/delivery/postgresql/9.2] action create (up to date)
  * directory[/var/opt/delivery/postgresql/9.2] action create (up to date)
  * execute[sysctl] action nothing (skipped due to action :nothing)
  * bash[add shm settings] action run (skipped due to not_if)
  * enterprise_pg_cluster[/var/opt/delivery/postgresql/9.2/data] action init
    * directory[/var/opt/delivery/postgresql/9.2/data] action create (up to date)
    * execute[initialize_cluster_/var/opt/delivery/postgresql/9.2/data] action run (skipped due to not_if)
    * template[/var/opt/delivery/postgresql/9.2/data/postgresql.conf] action create (up to date)
    * template[/var/opt/delivery/postgresql/9.2/data/pg_hba.conf] action create (up to date)
     (up to date)
  * link[/var/opt/delivery/postgresql/9.2/data] action create (skipped due to not_if)
  * template[/var/log/delivery/postgresql/9.2/config] action create (up to date)
Recipe: <Dynamically Defined Resource>
  * service[postgresql] action nothing (skipped due to action :nothing)
Recipe: delivery::postgresql
  * runit_service[postgresql] action enable
  Recipe: <Dynamically Defined Resource>
    * directory[/opt/delivery/sv/postgresql] action create (up to date)
    * template[/opt/delivery/sv/postgresql/run] action create (up to date)
    * directory[/opt/delivery/sv/postgresql/log] action create (up to date)
    * directory[/opt/delivery/sv/postgresql/log/main] action create (up to date)
    * template[/opt/delivery/sv/postgresql/log/run] action create (up to date)
    * template[/opt/delivery/sv/postgresql/log/config] action create (up to date)
    * directory[/opt/delivery/sv/postgresql/control] action create (up to date)
    * template[/opt/delivery/sv/postgresql/control/t] action create (up to date)
    * link[/opt/delivery/init/postgresql] action create (up to date)
    - configure service runit_service[postgresql]
Recipe: delivery::delivery_database
  * enterprise_pg_user[delivery] action create
    * execute[create_postgres_user_delivery] action run (skipped due to not_if)
     (up to date)
  * enterprise_pg_user[delivery_ro] action create
    * execute[create_postgres_user_delivery_ro] action run (skipped due to not_if)
     (up to date)
  * enterprise_pg_database[delivery] action create
    * execute[create_database_delivery] action run (skipped due to not_if)
     (up to date)
  * execute[delivery schema] action run
    - execute sqitch --engine pg --db-name delivery --top-dir /opt/delivery/embedded/service/delivery_schema deploy --verify
Recipe: delivery::postgresql
  * execute[add_uuid-ossp_delivery] action run
    - execute psql --dbname delivery --single-transaction --set ON_ERROR_STOP=1 --command 'CREATE EXTENSION IF NOT EXISTS "uuid-ossp"'
Recipe: delivery::nginx
  * directory[/var/opt/delivery/nginx/ca] action create (up to date)
  * directory[/var/opt/delivery/nginx/etc] action create (up to date)
  * directory[/var/log/delivery/nginx] action create (up to date)
  * directory[/var/opt/delivery/nginx/etc/addon.d] action create (up to date)
  * directory[/opt/delivery/embedded/nginx/logs] action create (up to date)
  * template[/var/opt/delivery/nginx/etc/addon.d/21-delivery_internal.conf] action create (up to date)
  * template[/var/opt/delivery/nginx/etc/addon.d/21-delivery_upstreams.conf] action create (up to date)
  * template[/var/opt/delivery/nginx/etc/nginx.conf] action create (up to date)
  * template[/var/log/delivery/nginx/config] action create (up to date)
Recipe: <Dynamically Defined Resource>
  * service[nginx] action nothing (skipped due to action :nothing)
Recipe: delivery::nginx
  * runit_service[nginx] action enable
  Recipe: <Dynamically Defined Resource>
    * directory[/opt/delivery/sv/nginx] action create (up to date)
    * template[/opt/delivery/sv/nginx/run] action create (up to date)
    * directory[/opt/delivery/sv/nginx/log] action create (up to date)
    * directory[/opt/delivery/sv/nginx/log/main] action create (up to date)
    * template[/opt/delivery/sv/nginx/log/run] action create (up to date)
    * template[/opt/delivery/sv/nginx/log/config] action create (up to date)
    * link[/opt/delivery/init/nginx] action create (up to date)
    - configure service runit_service[nginx]
Recipe: delivery::nginx
  * template[/etc/delivery/logrotate.d/nginx] action create
    - change owner from 'delivery' to 'root'
    - restore selinux security context
Recipe: delivery::delivery_web
  * directory[/var/opt/delivery/delivery_web/etc] action create (up to date)
  * template[/var/opt/delivery/delivery_web/etc/webui_config.js] action create
    - update content in file /var/opt/delivery/delivery_web/etc/webui_config.js from cae938 to f68209
    --- /var/opt/delivery/delivery_web/etc/webui_config.js	2015-05-12 14:10:48.909355673 +0000
    +++ /tmp/chef-rendered-template20150512-3860-14n6l3l	2015-05-12 21:42:32.219063482 +0000
    @@ -1,7 +1,7 @@
     require=(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);throw new Error("Cannot find module '"+o+"'")}var f=n[o]={exports:{}};t[o][0].call(f.exports,function(e){var n=t[o][1][e];return s(n?n:e)},f,f.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({"XyFutm":[function(require,module,exports){
     // Production specific config
     var appConfig = {
    -  build_version: "v0.3.47",
    +  build_version: "v0.3.48",
       external_auth: false,
       password_recovery_url: "http://google.com",
       embedly_api_key: "e0435c6ccfd74dfaacf7dfc987c9a7fa",
    - restore selinux security context
  * link[/opt/delivery/embedded/service/delivery_web/javascripts/app_config.js] action create
    - unlink existing symlink to file at /opt/delivery/embedded/service/delivery_web/javascripts/app_config.js
    - create symlink at /opt/delivery/embedded/service/delivery_web/javascripts/app_config.js to /var/opt/delivery/delivery_web/etc/webui_config.js
Recipe: delivery::ctl_commands
  * template[/opt/delivery/embedded/service/omnibus-ctl/data_ctl.rb] action create (up to date)
  * template[/opt/delivery/embedded/bin/backup-data-ctl] action create (up to date)
  * template[/opt/delivery/embedded/bin/restore-data-ctl] action create (up to date)
  * template[/opt/delivery/embedded/bin/delivery_backup] action create (up to date)
Recipe: delivery::delivery
  * directory[/var/opt/delivery/delivery] action create (up to date)
  * directory[/var/opt/delivery/delivery/etc] action create (up to date)
  * directory[/var/log/delivery/delivery] action create (up to date)
  * directory[/var/log/delivery/delivery/sasl] action create (up to date)
  * directory[/opt/delivery/embedded/service/delivery] action create (up to date)
  * directory[/opt/delivery/embedded/service/delivery/log] action delete
    - delete existing directory /opt/delivery/embedded/service/delivery/log
  * link[/opt/delivery/embedded/service/delivery/log] action create
    - create symlink at /opt/delivery/embedded/service/delivery/log to /var/log/delivery/delivery
  * template[/var/opt/delivery/delivery/etc/erlang.cfg] action create (up to date)
  * template[/var/opt/delivery/delivery/etc/sys.config] action create
    - update content in file /var/opt/delivery/delivery/etc/sys.config from 02273e to 686550
    --- /var/opt/delivery/delivery/etc/sys.config	2015-05-12 14:10:50.063078712 +0000
    +++ /tmp/chef-rendered-template20150512-3860-1neigv0	2015-05-12 21:42:32.390085214 +0000
    @@ -68,7 +68,7 @@
               ]},

      {delivery, [
    -             {omnibus_version, "0.3.47"},
    +             {omnibus_version, "0.3.48"},
                  {listen_ip, "<IP_ADDRESS>"},
                  {listen_port, 9611},
                  {hostname, "<IP_ADDRESS>"},
    - restore selinux security context
  * template[/var/opt/delivery/delivery/etc/vm.args] action create (up to date)
Recipe: delivery::delivery_git
  * directory[/var/opt/delivery/delivery/etc/ssh_git_server_keys] action create (up to date)
  * execute[create rsa passphrase-less key for SSH git] action run (up to date)
  * execute[create dsa passphrase-less key for SSH git] action run (up to date)
Recipe: delivery::delivery
  * link[/opt/delivery/embedded/service/delivery/releases/0.0.1/sys.config] action create
    - unlink existing symlink to file at /opt/delivery/embedded/service/delivery/releases/0.0.1/sys.config
    - create symlink at /opt/delivery/embedded/service/delivery/releases/0.0.1/sys.config to /var/opt/delivery/delivery/etc/sys.config
  * link[/opt/delivery/embedded/service/delivery/releases/0.0.1/vm.args] action create
    - unlink existing symlink to file at /opt/delivery/embedded/service/delivery/releases/0.0.1/vm.args
    - create symlink at /opt/delivery/embedded/service/delivery/releases/0.0.1/vm.args to /var/opt/delivery/delivery/etc/vm.args
  * template[/var/log/delivery/delivery/config] action create (up to date)
Recipe: <Dynamically Defined Resource>
  * service[delivery] action nothing (skipped due to action :nothing)
Recipe: delivery::delivery
  * runit_service[delivery] action enable
  Recipe: <Dynamically Defined Resource>
    * directory[/opt/delivery/sv/delivery] action create (up to date)
    * template[/opt/delivery/sv/delivery/run] action create (up to date)
    * directory[/opt/delivery/sv/delivery/log] action create (up to date)
    * directory[/opt/delivery/sv/delivery/log/main] action create (up to date)
    * template[/opt/delivery/sv/delivery/log/run] action create (up to date)
    * template[/opt/delivery/sv/delivery/log/config] action create (up to date)
    * directory[/opt/delivery/sv/delivery/control] action create (up to date)
    * template[/opt/delivery/sv/delivery/control/t] action create (up to date)
    * link[/opt/delivery/init/delivery] action create (up to date)
    - configure service runit_service[delivery]
Recipe: delivery::delivery
  * execute[/opt/delivery/bin/delivery-ctl start delivery] action run
    - execute /opt/delivery/bin/delivery-ctl start delivery
Recipe: delivery::omnibus
  * file[/etc/delivery/delivery-running.json] action create
    - update content in file /etc/delivery/delivery-running.json from e06ce3 to a290e6
    --- /etc/delivery/delivery-running.json	2015-05-12 14:10:56.730257159 +0000
    +++ /etc/delivery/.delivery-running.json20150512-3860-1drcs4p	2015-05-12 21:42:32.772133788 +0000
    @@ -4,7 +4,7 @@
         "cookbook_path": "/opt/delivery/embedded/cookbooks",
         "dir": "/opt/delivery",
         "bootstrap": {
    -      "enable": true
    +      "enable": false
         },
         "chef_base_path": "/opt/opscode",
         "user": {
    @@ -68,7 +68,7 @@
           "etc_dir": "/var/opt/delivery/delivery_web/etc",
           "external_auth": false,
           "password_recovery_url": "http://google.com",
    -      "build_version": "0.3.47",
    +      "build_version": "0.3.48",
           "api_version": "v0",
           "embedly_api_key": "e0435c6ccfd74dfaacf7dfc987c9a7fa",
           "root": "/opt/delivery/embedded/service/delivery_web"
    - restore selinux security context
Recipe: delivery::backup_cronjob
  * template[/etc/cron.d/delivery_backup] action delete (up to date)
Recipe: <Dynamically Defined Resource>
  * service[delivery] action restart
    - restart service service[delivery]

Running handlers:
Running handlers complete
Chef Client finished, 29/106 resources updated in 11.621822325 seconds
delivery Reconfigured!
[root@delivery-server ~]#


Project name is unauthorized use of a registered trademark?

Lotus® is a registered trademark of IBM.
I'm pretty sure that your use is infringing, since web products under the Lotus brand have been a core IBM product area.
Have you checked with IBM legal that the trademark is being abandoned?

@lpar I haven't checked with them because this started as a side project and have nothing to do with IBM or their office suite. My intention is not to fool customers with the same name or take advantage of IBM popularity.
I named it after the spiritual meaning that this flower has for me. It's even tattooed on my arm.

I've noticed that you work for IBM on the Lotus Domino team. Are you speaking on behalf of your company?

jaam rek: Peace always

On Jan 5, 2016, at 11:48 AM, mathew<EMAIL_ADDRESS>wrote:
Lotus® is a registered trademark of IBM http://wwwibmcom/legal/us/en/copytradeshtml#section-L
I'm pretty sure that your use is infringing, since web products under the Lotus brand have been a core IBM product area https://enwikipediaorg/wiki/IBM_Lotus_Web_Content_Management
Have you checked with IBM legal that the trademark is being abandoned?
—
Reply to this email directly or view it on GitHub https://github.com/lotus/lotus/issues/445.

I don't work on the Lotus Domino team. I am not speaking on behalf of IBM. I was simply hoping to alert you to the problem so that you could resolve it without any need for lawyers being involved.

@lpar Thank you for the clarification. I hope the same.
What's your suggestion?

Well, the clash is unfortunate and it will be a pain, but my suggestion would be to pick a new name. Maybe "nelumbo" after the genus of the sacred lotus flower? (Nelumbo nucifera)
Looks like there was an application to trademark nelumbo for laundry detergent, but it was abandoned, so you should be in the clear. (Disclaimer: This is not legal advice, as I'm not a lawyer either!)
(As an aside, the software company Lotus was named after the lotus position, so it's also linked to the flower.)

If you do need to change, what about ‘lotus framework’ or some such composite?

On Jan 5, 2016, at 11:48 AM, mathew<EMAIL_ADDRESS>wrote:
Lotus® is a registered trademark of IBM http://wwwibmcom/legal/us/en/copytradeshtml#section-L
I'm pretty sure that your use is infringing, since web products under the Lotus brand have been a core IBM product area https://enwikipediaorg/wiki/IBM_Lotus_Web_Content_Management
Have you checked with IBM legal that the trademark is being abandoned?
—
Reply to this email directly or view it on GitHub https://github.com/lotus/lotus/issues/445.

I hate to think that we have to rename the project.
Marketing-wise, nelumbo is not very great as it sound awkward and hard to memorize.
I would not worry about this now until it has become a problem. Then we could think of other naming.

@lpar "lawyers", "will be a pain".. The more I read what you write, the more this looks like an informal "cease and desist".
I can even rename the project "nelumbo", which is horrible name btw, but there is one problem. I don't have money to register trademark, I don't have money to pay lawyers to defend that trademark. So if the next corporation wants to sue me, it can do it.
I'm exposing myself and my family with this project, by doing full time, unpaid work on Lotus, since July. I cannot even think what will happen if a letter from your lawyers will be delivered to my house.
I'm doing this "only" because I truly believe in Open Source, and giving back to the Community. I put all my efforts in it in the last three years, I never earned a dime from it, never tried to fool developers because we share the name.
My choice was unfortunate, but again, it's named after a spiritual meaning that it has for me.
This is the first time I feel discouraged and depressed about this project. Give to the Community and potentially get ruined as result. This industry is broken.
We'll evaluate what to do soon.

PS: the project will continue with the expected timeline, I don't know under which name in the future.

http://www.bitlaw.com/trademark/common.html - If you use it first, you're protected.
This isn't really an existential threat - IBM doesn't want to destroy your project, they just don't want people confusing things as their project. The only company I've seen use trademark to try to kill others is King games.

It's worth mentioning that IBM owning the trademark of a name including the word "Lotus" does not per definition mean nobody else is allowed to use said word for a project. For example, the US (and many other countries) have a fair use policy that covers commonly used words, symbols and the likes. How this holds up in court is up to the lawyers and judges involved.
Without knowing what countries and laws are involved it's hard to get a definitive answer. I suggest contacting organizations such as the FSF, though I'm unsure if they help in these sort of cases. Also until IBM itself files a case I wouldn't worry about it too much, though that's just my personal view on the matter.

This is very good advice.

On Jan 6, 2016, at 8:37 AM, Yorick Peterse<EMAIL_ADDRESS>wrote:
It's worth mentioning that IBM owning the trademark of a name including the word "Lotus" does not per definition mean nobody else is allowed to use said word for a project. For example, the US (and many other countries) have a fair use policy that covers commonly used words, symbols and the likes. How this holds up in court is up to the lawyers and judges involved.
Without knowing what countries and laws are involved it's hard to get a definitive answer. I suggest contacting organizations such as the FSF, though I'm unsure if they help in these sort of cases. Also until IBM itself files a case I wouldn't worry about it too much, though that's just my personal view on the matter.
—
Reply to this email directly or view it on GitHub https://github.com/lotus/lotus/issues/445#issuecomment-169324232.

As an example, in the US alone there are already tons of trademarks containing the word "Lotus": http://tmsearch.uspto.gov/bin/showfield?f=toc&state=4806%3Azz5vri.1.1&p_search=searchss&p_L=50&BackReference=&p_plural=yes&p_s_PARA1=&p_tagrepl~%3A=PARA1%24LD&expr=PARA1+AND+PARA2&p_s_PARA2=Lotus&p_tagrepl~%3A=PARA2%24COMB&p_op_ALL=AND&a_default=search&a_search=Submit+Query&a_search=Submit+Query
In this list there are multiple instances of the literal word "Lotus" being trademarked by different entities.
The same applies to other commonly used words, e.g. "Ruby": http://tmsearch.uspto.gov/bin/showfield?f=toc&state=4806%3Azz5vri.1.1&p_search=searchss&p_L=50&BackReference=&p_plural=yes&p_s_PARA1=&p_tagrepl~%3A=PARA1%24LD&expr=PARA1+AND+PARA2&p_s_PARA2=Ruby&p_tagrepl~%3A=PARA2%24COMB&p_op_ALL=AND&a_default=search&a_search=Submit+Query&a_search=Submit+Query

Oh, apparently the links are bound to a session. Great. Either way, use the link http://tmsearch.uspto.gov/bin/gate.exe?f=login&p_lang=english&p_d=trmk, use "Basic Word Mark Search (New User) ", then search for "Lotus".

I am the author/maintainer of a rubygem called cocoon, and apparently there is a framework by Apache with the same name, and they have registered their trademarks, and they asked me to just place a very clear and explicit message that my code/gem was not related in any way to the Apache Cocoon project. Also: they reached out to me, as I was not aware of this at all.
Also I worked at a company where we guarded trademarks and helping searching for new trademark names, and @YorickPeterse is imho right. If a company would care about it's trademark, or would consider this project to be infringing, I would assume you would already be contacted. Personally I do not see how this project could be infringing for IBM. On the other hand, Disney considers any use of any of their names infringing (for good reason probably). On the off chance they would contact you, just renaming to Lotus.rb would already put you in the clear.

Note: while I worked at such a company, I am just a programmer, so this is just my opinion and has no legal basis whatsoever :smile:

Yes, you can have non-infringing use of the same trademark in a different area of business where there won't be confusion. Look at Apple vs Apple — it was OK when Apple Computer made computers and Apple Corp was a record company, but once Apple Computer started selling computers that could make music, things got ugly.
So Lotus jewelry isn't going to clash with Lotus web software or Lotus Chinese restaurant. But that's why I mentioned IBM's products — the Lotus trademark has been specifically used by IBM for web software, including web development frameworks. It confused me for a moment when I first saw the name; that's how I ended up here, and the reason why I suspect it might lead to trouble.
You don't need to register a trademark, you don't need lawyers (yet), you don't need to spend money or get worked up. I'm just a bystander who happened to notice a likely trademark infringement, and to try and save you from unpleasantness I thought I'd alert you to the problem. It's quite possible I wasn't even supposed to do that, but I don't like seeing free software projects scared by legal letters.
Ultimately all I'm really saying is that personally, I think it might save you grief in the future if you come up with a name that hasn't been registered as a trademark and recently used for the exact same sort of project. I would have offered the same advice if your project was called WebLogic or WebObjects; the specifics of who owns what trademarks are just detail. You are, of course, free to ignore my personal advice. Or, you might just put a disclaimer in the README as @nathanvda suggests, and hope for the best.
As far as the lotus having deep personal meaning, I sympathize, and naming is hard. But, I can't help reflecting that a name is just a label, and that if you label a thing and cultivate strong attachment to that label... well, that's not really what the lotus flower is all about, is it?

Don't worry about it until someone from IBM contacts you about it — and that doesn't seem very likely to happen. IBM is not using the Lotus trademark, and trademarks are unenforceable if they're not used. Of course, you don't have the time or money to fight them even if you're not doing anything wrong. But there's no sense in rolling over and playing dead if nobody is attacking you.

As others have mentioned, trademarks are registered in industries/categories, and the protection only exists within that industry that the owner continues to trade in.
That having been said, IBM definitely hold the "Lotus" trademark in the relevant category ("Computer Programs and Related Documentation"), but here are the good things:

The onus is on the trademark holder to enforce their trademark, there's no burden on you at all until they contact you.
Even once that happens (if you wanted to fight it) they need to show that you're "engaged in commerce" in the jurisdiction they hold the trademark in, this is very clear for a non-FOSS project/product/company but less so for FOSS.
They also need to show that there exists a likelihood of confusion, this is often very hard to show for non-competitors. This point also includes the requirement that they're actively using the trademark, if they're not using it then there can't be any confusion.
That brings me to the biggest thing in your favor, IBM are pulling back from their Lotus trademark and name. Domino is now IBM Domino and even Notes is IBM Notes now. Their existing usage of "Lotus" is mostly as an umbrella brand for a whole suite of software (protected by this trademark btw) and you're not in breach of that at all.

So, my summary, wait until they contact you anyway, and even then if you wanted I think you have grounds to force the issue.

Also, delete this issue so they don't find it when they google for IBM/Lotus/trademark ;)

@booch and @smathy :+1:

Ummm…IANLAL, but I'd think that deleting or otherwise obscuring this discussion after the fact, in light of the Wayback Machine and other technology, might lead an ambitious young lawyer in the Stygian depths of Big Blue to try to score points by saying "hey! they knew they were potentially infringing; whether or not they actually were, they tried to cover it up! Let's bash their teeth in!" Shit like that has happened with far more tenuous cause.
tl;dr As in music, when you make a mistake, make it loudly.

Ciao Luca!
first of all: your work on Lotus is great and i keep t this opccasion to thank you!
back to the "issue", I see your points, and yes, I understand the love for word 'lotus' because spiritual meanings,
but let consider this remote legal trap in a positive way: my proposal could be to just contact IBM in some way, trying a no-cost agreement with them. As someone here state, maybe just a clarification note could be sufficient.
but i want to exaggerate: this contact with IBM could be the occasion to ask them a sponsorhip for Lotus! Why not! IBM is in some way (I hope so) interested in Ruby realms (see rumorsa about possible contacts between Yukihiro Matsumoto and IBM).
I believe Lotus is a splendid project an it could deserve attention by IBM :)
that could be invest more in software innovation and less in cloud computing marketing (my personal opinion) :)
respect
giorgio

IANAL, but I have been on both sides of trademark litigation. Smathy's summary of points are good, but I disagree with his advice to delete this issue. Jdickey is correct that this material would ultimately be considered material and subject to discovery (which is where the participants in litigation have to share information) in any potential litigation. The only way it would not be subject to discovery is if you had asked an attorney, rather than the internet.
Which leads me to another piece of advice. Soliciting legal advice in a public forum is a really bad idea. You're putting yourself in a position to discuss legal matters in a medium that is afforded zero protection from exploration by a potential legal opponent. I realize that this is antithetical to the open source mindset, but if you want to avoid trouble, you have to be prepared to switch contexts when working on your software versus running your organization.
My final advice would be this: don't obsess over future risk. Much of what has been said here — with regard to trademarks and their enforceability based on category/industry — is correct. However, the only action that really matters is that of the mark holder. lpar's comments are just that: comments. Just like some people can't help but say something when they see someone litter, lpar felt compelled to let you know that you're treading on questionable ground with regard to IBM's trademark. It's good information, but it carries no weight, legally speaking.
Until IBM comes knocking, or sells the trademark to someone else who cares, you don't have an issue. The counterpoint to this would be that you need to consider this question: will renaming the project get harder or easier with time?
If you are certain it will get harder over time, then rename the project now. Your chances of defending your use of the Lotus name against IBM are not good; unless you can find some outside source of funding to fight the case. That seems unlikely given that the Lotus trademark is in an industry so similar to your use case. The FSF or EFF are unlikely to come to your aid if they feel the chances of success are low, or that you should have been able to anticipate the issue.
If you feel that it makes no difference (relative to the difficulty of said task) whether you change the name now or at some future date, then keep on truckin'. At the time a mark holder comes knocking, it is extremely unlikely that they will take any action beyond issuing a cease & desist order. At that point, you can decide to change the name or fight it. If you were a commercial entity with substantial assets, they might seek to reclaim some of the benefit you had received from the abuse of their mark, but given that this is an open source project, it is unlikely that they'll waste the man hours with anything more than a boilerplate letter.

Thank you all for the suggestions. I'm in contact with people that can give me a legal advice.

We're changing name from Lotus to Hanami.
https://twitter.com/hanamirb/status/689861441361448960


fix: fixing hpa template with deployment names

https://parcellab.atlassian.net/browse/INF-1325
Description
It seems the HPA template is not using the correct deployment name. This should fix it.
Checklist

[ ] My change requires a change to the documentation
[ ] I have updated the documentation accordingly

@jmpalomares I am very sorry - we forgot the chart version updates


How to enable ligatures?

Hey! This is going to sound really noob, but where can I enable the ligatures?
I tried:
font:
  ligatures: true

System
OS: Linux xps 5.7.11-arch1-1 #1 SMP PREEMPT Wed, 29 Jul 2020 21:38:21 +0000 x86_64 GNU/Linux
Version: alacritty 0.6.0-dev (cdff663)
Linux/BSD: X11/i3/Picom
Logs
Crashes: STDERR, STDOUT
Font/Terminal size:
[2020-08-02 12:28:17.089978295] [INFO] Initializing glyph cache...
[2020-08-02 12:28:17.123830907] [INFO] ... finished initializing glyph cache in 0.033808101s
[2020-08-02 12:28:17.123889023] [INFO] Cell Size: 13 x 26
[2020-08-02 12:28:17.123902874] [INFO] Padding: 0 x 0
[2020-08-02 12:28:17.123918620] [INFO] Width: 800, Height: 600
[2020-08-02 12:28:17.134138618] [INFO] PTY dimensions: Line(23) x Column(61)
[2020-08-02 12:28:17.147467346] [INFO] Initialisation complete
[2020-08-02 12:28:17.148896314] [INFO] Width: 1276, Height: 468

Keyboard and bindings: alacritty --print-events

Bump

Thanks for the report. I guess I messed up something when I try to upgrade harfbuzz-sys. Please do not upgrade to the latest...

Hotfix applied in 70e8927. Please check again to see if the issue gets solved.

Some glyphs are working. This works <- but this doesn't ->
@zenixls2

-> works when I'm in vim

Which font are you using?

Jetbrains Mono @zenixls2

Maybe issues in your vim plugin? For example, different color for the two characters.
Also don't forget to do fc-cache -f after font installation.

In vim works as expected. It doesn't work in normal terminal

What if you use double quote to wrap the string?
Also some of the ligatures might be accidentally ignored in harfbuzz.


Get Request Body

Hey, I'm looking to see if its by chance possible to get the Body of a post request ETC.
I've tried just doing req.body and got nothing then tried the body-parser NPM package but it didn't work. It would just never solve the requests so I was wondering if theres a way to get the body currently..

Hello, we currently provide multiple methods to parse the incoming body of the request. At the moment, there isn't full compatibility with some low level Node APIs hence the body-parser package will likely not work at the moment. You can write your own middleware to automatically parse the body and populate the req.body property or manually retrieve the body from incoming requests.


Added function and relevant documentation (week 2)

Added a function and complementary test + documentation (readme)
DOCUMENTATION:
draw_random_colors()
Generates a list of four random colors represented as RGB (red-green-blue) values.
Returns:
- colors: A list of four tuples, where each tuple represents an RGB color.
          The (integer) values for red, green, and blue range from 0 to 255.

Example:
draw_random_colors()
[(45, 0, 128), (64, 193, 8), (128, 125, 36), (0, 0, 255)]

draw_random_colors() documentation looks good; however, I think you didn't add the function (and test) to this PR.
From speaking last week, have you figured out how you're gonna calculate the distance between two colors? Euclidean distance comes to my mind first, but I imagine the way humans perceive color distance is very non-Euclidean 😅. Curious to see how this develops:)


[mysql] startMySQLContainer: Fix goroutine leak

Signed-off-by: Gaurav Singh<EMAIL_ADDRESS>This PR fixes a goroutine leak. If the goroutine writing to the channel ch times out (> 30 seconds), then the goroutine is left hanging waiting for a corresponding reader. To avoid this, use a buffered channel.

Coverage remained the same at 54.054% when pulling dbe6cbe5f4411d617438189f8c84bb7a2567f708 on gaurav1086:startMySQLContainer_fix_goroutine_leak into 68e3282ef73c39c9ae998185f526cc2713c612d1 on Netflix:master.


Add heap_size and call_depth flags to gas_budget attributes

More tests will be added when I wire these to the test case runners.

look like get_assigned_attribute works as expected because we call it (only) in these three cases.

Apparently function get_assigned_attribute may trap on assert, so it should not be called "blindly".
One possibility is to return to your original code, but I think it would be better (at least from perspective of documenting) to list the correct cases for call of get_assigned_attribute right in the body of fn get_assigned_attribute_as_u64.
I tried this change and it worked:
fn get_assigned_attribute_as_u64(
    context: &mut Context,
    kind: &str,
    attr_loc: Loc,
    attr: Attribute,
) -> Option<u64> {
    match kind {
        _ if kind == TestingAttribute::GAS_BUDGET_COMPUTE_UNIT_LIMIT ||
            kind == TestingAttribute::GAS_BUDGET_HEAP_SIZE ||
            kind == TestingAttribute::GAS_BUDGET_MAX_CALL_DEPTH => {
            let (value_name_loc, attr_value) = get_assigned_attribute(
                context,
                kind,
                attr_loc,
                attr,
            )?;
            let (_, _, u) = convert_constant_value_u64_constant_or_value(
                context,
                value_name_loc,
                &attr_value,
            )?;
            return Some(u);
        },
        _ => {
            return None;
        }
    }
}

external-crates/move/target/debug/move test -p external-crates/move/crates/move-stdlib/Move.toml --arch solana --solana

...

[ PASS    ] 0xa::type_name_tests::test_structs
Test result: OK. Total tests: 143; passed: 143; failed: 0

Interesting, i think it makes sense to revert back to previous code. Duplicating the logic is probably not a good idea.
It's a penalty for using strings in match :)


pythonPackages: set mainProgram to pname by default

Motivation for this change
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[ ] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
21.11 Release Notes

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

You are right, I've updated the commit (with a message too)


abaddon: init at 0.1.9

Description of changes
abaddon is an alternative discord client.
https://github.com/uowuo/abaddon
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[x] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.05 Release Notes (or backporting 22.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Hows that?

the double semicolon is fixed now

Please update to 0.1.10.

done

Reword the title of PR
Ping me 2 days and I will merge this.

Reword the commit title too.

@AndersonTorres


Added specializations for promotion/policies (specifically needed for float); most special functions are explicitly exercised, the rest are exercised by way of the explicit tests of other functions

Codecov Report

Merging #11 into develop will decrease coverage by 32.55%.
The diff coverage is 64.34%.

@@             Coverage Diff              @@
##           develop      #11       +/-   ##
============================================
- Coverage      100%   67.44%   -32.56%
============================================
  Files            3        9        +6
  Lines         1583     2832     +1249
============================================
+ Hits          1583     1910      +327
- Misses           0      922      +922

Impacted Files
Coverage Δ

include/boost/math/differentiation/autodiff.hpp
94.81% <ø> (-5.19%)
:arrow_down:

test/test_autodiff2.cpp
100% <100%> (ø)

test/test_autodiff.hpp
100% <100%> (ø)

test/test_autodiff1.cpp
100% <100%> (ø)

test/test_autodiff3.cpp
100% <100%> (ø)

test/test_autodiff4.cpp
100% <100%> (ø)

test/test_autodiff6.cpp
44.56% <44.56%> (ø)

test/test_autodiff5.cpp
47.47% <47.47%> (ø)

...lude/boost/math/differentiation/autodiff_cpp11.hpp
100% <0%> (ø)
:arrow_up:

... and 7 more

Continue to review full report at Codecov.

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

I needed to add type casting specializations after I added atan2 (which is
called by one of the special functions). I’ll check if the type casting
specializations remove the need for having this function at all.
On Mon, Feb 25, 2019 at 12:33 PM pulver<EMAIL_ADDRESS>wrote:

@pulver commented on this pull request.
In include/boost/math/differentiation/autodiff.hpp
https://github.com/pulver/autodiff/pull/11#discussion_r259960373:

@@ -1317,6 +1347,14 @@ fvar<RealType,Order> atan(const fvar<RealType,Order>& cr)
}
}

+template<typename RealType1, size_t Order1, typename RealType2, size_t Order2>
+promote<fvar<RealType1,Order1>, fvar<RealType2,Order2>> atan2(const fvar<RealType1,Order1>& cr1, const fvar<RealType2,Order2>& cr2)
+{

using std::atan2;

return atan2(static_cast(cr2), static_cast(cr1));

Should cr2 and cr1 be swapped?
Either way, how does this calculate derivatives? (Any overloaded
mathematical function that returns an fvar<> type in this namespace is
expected to calculate arbitrarily high derivatives accurately.)

—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/pulver/autodiff/pull/11#pullrequestreview-207560590,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AHlYFukkLxYuGOD7Kcavzz5D4Jc7GHwAks5vRCx7gaJpZM4bPNJw
.

--
Kedar R. Bhat
eMail<EMAIL_ADDRESS>Mobile:<PHONE_NUMBER>


project export limited to .ck plus one file

Looks like export of a project with a .ck that references two files (for example, two time series data files), only exports one of those to the exported project.

Just to confirm, this is only happening to you for "Export to WebChucK" right? I was able to reproduce it for that case but not normal ChucK export. It seems like something fishy is going on with the filesystem...will investigate.

I looked at this further and it is just that all files except for the active file in the editor are exported as auxiliary files. So you just need to make sure that you are looking at the .ck file for the other two files to be exported. I can try to improve this in the export page.

I added a manual selection for the WebChucK main ChucK file to mitigate this confusion! The main .ck file gets embedded into the index.html. All other files (.csv etc.) are attached as other auxiliary files.

dir
\
 - index.html
 - phase1.csv
 - phase2.csv


fix(curriculum): test typos

Nothing serious, but I found a few things while auditing.

Thanks for the speedy reviews :tada:


Fixed the libName that the jni Class tries to load being empty

This happened because the Reflection class was using RustJniExtension.libName directly, but the value could be empty since the libName can be obtained from Cargo.toml.
This use case is missed by the tests because they only test for cases where the rust library is generated by the plugin, so we need to add tests for when the rust library already exists.

I just published a 0.0.19 from here and I updated our samples to use that version. Android Studio does not find a 0.0.19, even if that appears on the grade portal. Maybe this refresh take some time. I will come back soon to check before merging it.
Thanks


First Commit - Adding update.ign.py to update ignition files

The script uses config.yaml as input for user-defined variables.

thanks @abhis2112 . We need to more information in the commit message.

What is the need for this script
What are the assumptions (there are a bunch of things which are hardcoded, including the names of the nodes, all those values should be explained clearly
How is this test supposed to be run
What output you should expect, and what you should do with it.

Perhaps all of the above can be documented clearly in the script itself as opposed to the commit message.


Add Float16Array

I discovered today that V8 uses https://github.com/Maratyszcza/FP16/blob/master/include/fp16/fp16.h
Maybe that's an okay alternative: MIT-licensed, header-only, uses intrinsics and bit shifts (see! possible after all)
On the other hand: external dependency, more code, operates on floats instead of doubles so maybe not all that more efficient after all (because we'd be casting those floats to/from doubles everywhere)

No strong opinion, but I feel like your current approach better fits the project here.

If we really want to avoid the dependency on math.h for this very function perhaps we can borrow it from musl?

I initially had something like that. I was working out the logic by hand and after a while I realized I'd written an open-coded scalbn!
(Poorly though, without much thought given to subnormals.)


Certificate doesn't get added when testing connection

Adding a new connection to a machine that hasn't been previously connected before, and using "Test connection" before actually adding it, I see this:

This is expected. I proceed with "Install certificate", "Current user", "Automatically select the certificate store". I get a message box saying "Import was successful". I click "OK" to close the dialog above. I get an error message in the Workspaces window:

If I click "Test connection" again, I get the same dialog about certificate not being installed.

You need to import it to
a. Local machine
b. Trusted root

We need to figure out how to simplify and make automatic

Importing to "Local machine" requires elevation - effectively, the user must be admin.
We should look into supporting "Current user" store.

https://github.com/Microsoft/RTVS/commit/d438dc8cf54f4b468cdf5687d4de94cd7f754da2


Wrong condition in HTTP version check routine (esp_http_server component) (IDFGH-13878)

Answers checklist.

[X] I have read the documentation ESP-IDF Programming Guide and the issue is not addressed there.
[X] I have updated my IDF branch (master or release) to the latest version and checked that the issue is present there.
[X] I have searched the issue tracker for a similar issue and not found a similar issue.

IDF version.
v5.3.1
Espressif SoC revision.
ESP32-C3
Operating System used.
Windows
How did you build your project?
Command line with idf.py
If you are using Windows, please specify command line type.
CMD
Development Kit.
Custom Board
Power Supply used.
USB
What is the expected behavior?
ESP HTTP server component should refuse to execute HTTP 1.0 request.
What is the actual behavior?
ESP HTTP server component executing HTTP 1.0 request.
Steps to reproduce.
Use curl to issue HTTP 1.0 request to ESP board:
curl -0 -v http://esp-board.local
Debug Logs.
No response
More Information.
There is an error in condition here https://github.com/espressif/esp-idf/blob/6e5a178b3120dced7fa5c29c655cc22ea182df3d/components/esp_http_server/src/httpd_parse.c#L89
Logical AND should be replaced with OR:
if ((parser->http_major != 1) || (parser->http_minor != 1))

Hello @valkuc
Thank you for bringing this change to our attention. We've raised a merge request, which will be reflected in the main repository soon.

@nileshkale123 The release branches also need fix.

Sure. It's already in progress.
Thanks


Codecov

It seems that one of the most causes of failure is CODECOV_TOKEN access. Especially, it seems that since v4 tokenless upload is unsupported:
https://github.com/codecov/codecov-action/releases/tag/v4.0.0
Unfortunately, I can not access the repo settings in GitHub, but I believe we should just add the token, taken from here:
https://app.codecov.io/gh/qiboteam/qiboml/settings
@scarrazza

@scarrazza it worked, perfectly
https://github.com/qiboteam/qiboml/actions/runs/8851612148/job/24399044447
@MatteoRobbiati whenever you can, confirm this as well, and then close the PR.

I can confirm, test are now passing. Thanks.


[Hero]Fairy

ranged, int, support
Q [Shared Pain] [Passive] [use to change target, can be targeted] Part of damage dealed to Fairy is transfered to nerby allay. cant switch targets when on cd, even passivly.
W [Wild Desire, Allay only] Grants damage taken reducktion to trget, enemy around target are tounted (like berseker call).
E [Ilusion] Create ilusion of target, ilusion not take additional damage, don't deal damage. [work like pl ilusiion, spells also are "casted" by it]
R [Empathy] Evry time that target deal damage it take part of it.
Hero Passive [Last will] After death spawns two wraith's.

wraith don't deal damage, have spells. Have medium durability.

Wraith Abilities:
Q [Circle of life] sacrafice itself to full heal target
W [Stigma] Sacrafice itself to reduce armmor of the target by x, evasiones to 0 and dispel buffs. havy dispell
E [Parasite] Deal x% target current hp as magical damage, lasts x seconds (around 5% hp for 15s)

Tree
lvl 10 +Spell range / Wild Desire reduce transfered damage.

.../ Fairy don't lose reducktions.
lvl 15 Ilusion now heals x% hp. / Ilusion now deal damage.
lvl 20 Cooldown reducktion. / +1 Spawned Wraith.
lvl 25 Have x% chance to spawn a Wraith from nerby fallen unit, doubled chance on hero. / Can controle unit with parasite when it is below x% hp.

(i can write Lore and flavored spell discription)

#393


TextField disrupts scrolling on Cordova iOS device

Expected Behavior 🤔
I have a bunch of TextField arranged vertically which is longer then the device screen so I must vertical scroll to reach all. Touch scrolling with 1 finger should work as expected on all platforms
Current Behavior 😯
on iOS, 1 finger touch scrolling does not work if the finger comes down on a TextField. Nothing happens as the finger slides vertically.
Interestingly, 2 finger scrolling works OK.
If I replace the TextField with Typography then 1 finger scrolling works OK (and 2 finger).
 So...
TextField disrupts scrolling on Cordova iOS. It is difficult to 1 finger scroll vertically. Most of the time nothing happens. Interestingly, 2 finger scrolling works OK with TextField
If I replace the TextField with Typography then 1 finger scrolling works OK (and 2 finger)
No problems on Android and Web

I can add that the problem occurs when the finger comes down on the TextField.
If the finger comes down on a non TextField area of the screen then scrolling works OK
So I guess that the TextField is consuming the vertical (1 finger) scrolling events

Hi. any chance of some feedback on why this issue was closed?

The issue misses a reproduction, if you find a solution to the problem, we will be happy to review your pull request.

I'm having the same problem, please we need a solution for this.

This is happening in almost all IOS devices, even on the web (not a Cordova platform). If you open a webpage on IOS and try to scroll it won't work if you are scrolling over the inputs from Material UI. It looks like you are using that event and is messing up with the scroll.

@jonidelv I can't reproduce with an iPhone XS, Safari v12 and https://material-ui.com/components/text-fields/.

@oliviertassinari I managed to fix it. @petercutting maybe this works for you too: Bumped to the last version "@material-ui/core": "^4.3.0", added
 display: flex;
 flexWrap: wrap;

to the form element and removed overflow: overlay I had on the input's container element.

thanks for the info. I do not understand what you mean by "form element".
Is that the TextField?
On Mon, 29 Jul 2019 at 23:49, Jonatan del Valle<EMAIL_ADDRESS>wrote:

@oliviertassinari https://github.com/oliviertassinari I managed to fix
it. @petercutting https://github.com/petercutting maybe this works for
you too: Bumped to the last version "@material-ui/core": "^4.3.0", added
display: flex;
flexWrap: wrap;
to the form element and removed overflow: overlay I had on the input's
container element.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/mui-org/material-ui/issues/16675?email_source=notifications&email_token=AADTWC6RKMAQAXJFLBXFG73QB5QWTA5CNFSM4IFVMSUKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD3CDNFQ#issuecomment-516175510,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AADTWC4PFCWJCK4ACNVGMFLQB5QWTANCNFSM4IFVMSUA
.

--
Peter Cutting
work    +46 40 105858 (ring this number)
work    +46 705 505806 (SMS)
private +46 708 565056 (not currently in use)

I mean this
<form>
	yours TextFields here
</form>

None of the above worked for me. I have however found a big improvement
I noticed that some TextField sub-component have "pointer-events: none" so I clobbered them with the code below.
now most attempts to drag scroll work, rather then not working.
const mytheme = createMuiTheme({
overrides: {
MuiInput: {
underline: {
"&&&&:before": { // improves drag scroll on Cordova iOS
pointerEvents: "auto",
},
"&&&&:after": { // may not actually help
pointerEvents: "auto",
}
}
}
}
});
<MuiThemeProvider theme={mytheme}>
  <TextField ...
</MuiThemeProvider>


Can we use the Unity Unsafe Utility to replace Unsafe

This can reduce dependence
https://docs.unity3d.com/ScriptReference/Unity.Collections.LowLevel.Unsafe.UnsafeUtility.html

It's not possible because UnsafeUtility.SizeOf only work for structs.

Fix in 1.4.2


[Feature request] Pass body and query as kwargs

Hello, I would like to discuss the following feature:
Having the ability to have the potential query and body objects directly passed as kwargs to the method.
The two reasons I like this feature:

The code is easier to understand, you do not have to go through the request object.
If you add the type hints to the arguments (as shown in the example below), query and body will be correctly typed in your IDE. This brings a much better developer experience.

In the example below, the validate_and_parse is doing the same thing as validate would except it populates the decorated function kwargs.
...
from flask_pydantic import validate_and_parse

...

class QueryModel(BaseModel):
    age: int

class BodyModel(BaseModel):
    name: str
    nickname: Optional[str]

class ResponseModel(BaseModel):
    id: int
    age: int
    name: str
    nickname: Optional[str]

@app.route("/", methods=["POST"])
@validate_and_parse(body=BodyModel, query=QueryModel)
def post(query: QueryModel, body: BodyModel):
    """
    Basic example with both query and body parameters, response object serialization.
    """
    # save model to DB
    id_ = 2

    return ResponseModel(
        id=id_,
        age=query.age,
        name=body.name,
        nickname=body.nickname,
    )

If you are interested in this feature, I would really love to have a crack at it.
I already have a quick implementation ready.

Hi,
To be honest I was thinking about this possibility while building this library but at the end I decided to use request object since it felt more "flasky" way to me.
However your suggestion makes sense and I would love to have this feature built in. Especially the hints in IDEs would make such a really difference!
Thank You! You are very welcome to implement these changes.
Jirka

I am glad that you like this feature :smile: !
I have several ideas regarding the implementation of the feature.
Solution 1
@app.route("/", methods=["POST"])
@validate_and_parse(body=BodyModel, query=QueryModel)
def post(body: BodyModel, query: QueryModel):
	...

The one I presented in my original message. It would imply to:

Have a new decorator validate_and_parse, which would make the API more complex
Duplicate the body and query type definition (both in the decorator kwargs and the decorated function args)

Solution 2
@app.route("/", methods=["POST"])
@validate()
def post(body: BodyModel, query: QueryModel):
	...

This solution implies:

Use the same decorator validate, making the API simpler
The typing of body and query will be retrieved in validate using func.__annotations__
No duplication of parameters definition

We would raise an error if both methods of defining the parameters are used, eg:
@app.route("/", methods=["POST"])
@validate(body=BodyModel, query=QueryModel)
def post(body: BodyModel, query: QueryModel):
	...

# Will throw

Solution 3
@app.route("/", methods=["POST"])
@validate_and_parse()
def post(body: BodyModel, query: QueryModel):
	...

Same as last one, except we use a new validate_and_parse instead of adding the feature to validate.
I would personnaly be more inclined to implement the solution 2.
What do you think ?

This feature is included in package version 0.3.0. Thank You for contribution!


[WIP] Add negative blend shape weight support -1 and 1 values seem to work.

Improves the range available for blend shape weights as per #36707 we needed this for our own games it basically means you can use less blend shape tracks to do the same thing as the opposing blend direction which before needed you to duplicate blend shapes.
:+1: :cake:

forgot to say change is not required for 4.0 as I don't think since no blend shape support works yet.

Can you prepare a 4.0 patch just in case? It can be modified later, but you still remember the code.

Superseded by #45837.


no env R_VERSION in github workflow

i covered this in https://github.com/pharmaverse/admiralonco/pull/172 just now too, but i'm happy to merge this one here instead in case it impacts others in between getting that one merged


Usability improvements

Two changes:

Switches the arrow elements from React Elements to React Components to better match recommended React paradigms
Calculates the width of slide elements based on the parent list element rather than the entire slider element. This shouldn't break anything using the existing slick styling, but should allow for more flexible custom styling (such as including arrow elements within the width of the parent slider)

Fixed failing tests

@akiran Do you have any thoughts on this pull request? Would love to work on some other improvements!


Add Fog of War functionality to visualizer

Add fog of war pov for both teams individually and together.
Screenshots of Different Modes

Both Team FOW
Team 2 FOW

Team 1 FOW
No FOW

This is awesome! Thanks @TGDivy , I will probably change the default to be no fog of war for consistency with what most competitors remember seeing but will announce these nice features.


feat: add support for glue catalog

Experimental support for registering external tables in Glue Catalog.

For some reason tests pass if i run pytest tests/unit/test_glue.py but fails if I run pytest tests/unit/. Will take a look


Add release scripts

This PR make the build script configurable through maven properties and take advantage of these feature to create a release with a configurable namespace.
This feature will also allow a factorization of the CI build script.

This looks a bit different from the jetty setup, but I'll let @aslo handle the review.


Find the correct knob label

Find the correct label on the right bar near the lower knob that is defined in TbmChecklistGtcPlugin.tsx under getLabelBarHandlers() function.

As of this video the label is: "Select Item\nPush: Check"


Add billboard mode to PathLayer

For #3138
billboard: false (default)

billboard: true

This new prop is not supported in the deprecated fp64 mode.
There are precision issues at high zoom levels, will address in a follow up PR.
Change List

Add billboard prop to path layer (screenspace extrusion)
Docs

Coverage increased (+0.002%) to 61.955% when pulling 0726e7301893a5a1e30a91bc6d9bb7f013467d31 on x/path-layer-billboard into 6136bc73228e69df07ff7c360f674a5a5818bfd4 on master.


Update windows-iot-enterprise.md

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

windows-iotcore/windows-iot-enterprise.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


IGAPP-1262: Add zh as fallback language code for zh-CN

This pull request belongs to an issue on our bugtracker.
You can find it there by looking for an issue with the key which is mentioned in the title of this pull request.
It starts with the keyword IGAPP.

Hmm, I wasn't expecting side effects by this change, in my mind this would just result in "if the backend sends zh as language slug, use zh-CN as UI language"...
But since simplified Chinese is only used in Aschaffenburg at the moment, I don't think it's worth looking into the failing tests, we will keep the slug as it is in the cms.

@timoludwig do you want me to look into this?

@steffenkleinle if it's not too much effort, sure :+1:
The benefit would be that Aschaffenburg could use DeepL to create machine translations for simplified Chinese.

Sounds good, will have a look!

Okay, I had a look at it and tbh I don't get what i18next is doing there and what is happening.... adding a new fallback should not break an existing other fallback. I also don't get why ku is resolved to ku even though there is a fallback to kmr while zh-hans is resolved to its fallback zh-CN in the first place. That adding a fallback from zh to zh-CN changes the output of zh-hans to zh makes it even weirder...


[5.4][IRGen] Disable pre-specialization for 32-bit ARM on Linux

Explanation: This is a temporary workaround for segfaults we observed in TargetMetadata, caused by invalid pointers. It fixes those issues on linux armv7 and Android armv7, cherry-pick of #36658.

Scope: Only affects generating metadata for linux armv7 platforms.

SR Issue - none

Risk: None, only affects linux/Android armv7 and not the main platforms.

Testing: Several packages have been built and tested on linux and Android armv7 with this pull applied, including those that were failing before this pull and work now.

Reviewer: @drexin wrote this patch, @nate-chandler wrote the relevant runtime metadata code.

@swift-ci please smoke test

@swift-ci please test


Added MinIO as subchart and add it to director

[x] Add MinIO as subchart
[x] Add MinIO to director
[x] Add Documentation

Seeming as I've been working on tests today I'm just going to see if I can squeeze a test in for this one.

Sorry. I'm struggling to get the test to pass.
It works if I manually spin up a busybox and wget the service, but for some reason when running as a test it fails. If anyone wants to help, you have to pass a user agent header otherwise you won't get a response so don't remove that bit :)


Support Javaslang collections in @Wither

Javaslang is an framework that adds useful functionality, such as immutable collections with many common streaming actions available as a built-in method.
It would be useful if the types of collections that were supported by Wither included these collections.
One potential complication is that the Javaslang interfaces do not implement the java.util interfaces, which is a good thing in general.  (None of their methods throw UnsupportedOperationException.)  It does mean that this is not just an extension to how java.util.Collection fields are implemented.

That would be very useful for me as well.
I've been using lombok to make my objects immutable, and javaslang to get collections that are syntactically immutable as well (I used to use the guava collections, but the javaslang ones have all the higher order functions built in, and come with Tuples and Try statements, and...  It's just less boilerplate).

Javaslang was renamed to Vavr.
I like this idea, and actually feel the same need.
Vavr encourages and provides many immutable collections.
Currently in our code we use a lot @Wither for our model objects, but for all Vavr collection fields we write by hand such a method:
// MyClass.java

// This is a io.vavr.collection.List, not a java.util.List
private List<String> comments;

public MyClass withComments(Function<List<String>, List<String>> mapper) {
  return new MyClass(field1, field2, ..., mapper.apply(comments), fieldN);
}

This allows us to write code like this:
MyClass withNewComment = loadMyClass()
  .withComments(comments -> comments.append("My latest comment!"));

With this method, we can manipulate the previous immutable collection in whatever way we wish:
MyClass withNewComment = loadMyClass()
  // Append a comment
  .withComments(comments -> comments.append("My latest comment!"))
  // Remove an element
  .withComments(comments -> comments.remove("Comment to remove"))
  // Any manipulation, like filtering
  .withComments(comments -> comments.filter(comment -> !comment.isEmpty()))


[typo] add correct backquotes

sorry found ~another~ more typos of backquotes while reading in bed :)

Thank you @PhilETaylor.


Strapi 5

Do you plan to support strapi v5?

bump as there is already a preparation PR to update to v5, is there a planned release date?


Update to RxJS 5

I wanted to work through the koans, but since I'm using RxJS 5 and they were in RxJS 4, I decided to convert them as well. I'm not sure if this is wanted, but thought I might as well open a PR, if not for the merge than at least for others to see that there's a RxJS 5 version available.
I took the liberty to enable ES6 and stage-0 JavaScript, just for my own enjoyment, so if that's not desirable.. well, okay :)
Also, there are about three koans from the original that have not been converted (they're commented out) because the operators used have not been implemented yet and it's almost 2 at night, so I'm not going to look into fixing those right now.
Thanks for this project, it was fun working through :)

@ahstro have you had any luck converting the rest of it? I'd be happy to help out once I get there (I just started the first file tonight). Maybe once it's done, @mattpodwysocki would be more inclined to merge this in.

I haven't had a look at it and don't really have the time right now, so if you're willing to look at it, that'd be great :)


[Discussion] Radio button bar functionality - is it "vanilla"?

I've put together a Django Widget which allows radio buttons to be displayed as a Bootstrap 4 button group. My team has found this quite useful for mobile-friendly sites. I know Bootstrap 4 tries to stay with "vanilla bootstrap", but I'm not sure if this would qualify and figured I'd bring it up for discussion with the team.
class RadioSelectButtonGroup(RadioSelect):
    """
    This widget renders a Bootstrap 4 set of buttons horizontally
    instead of typical radio buttons. Much more mobile friendly.
    """
    template_name = 'bootstrap4/widgets/radio_select_button_group.html'

This could use some improvement (such as taking "primary" as an attribute), but you'll get the general idea:
<div{% if widget.attrs.id %} id="{{ widget.attrs.id }}"{% endif %} class="btn-group btn-group-toggle" data-toggle="buttons">
    {% for group, options, index in widget.optgroups %}
        {% for option in options %}
            <label class="{{ widget.attrs.class|add:' btn btn-outline-primary' }}{% if option.attrs.checked %} active{% endif %}" id="{{ widget.attrs.id }}">
                <input type="{{ option.type }}" name="{{ option.name }}" id="{{ option.attrs.id }}"{% if option.value != None %} value="{{ option.value|stringformat:'s' }}"{% if option.attrs.checked %} checked="checked"{% endif %}{% endif %}{% if widget.required %} required{% endif %}> {{ option.label }}
            </label>
        {% endfor %}
    {% endfor %}
</div>

To call it in a form:
from bootstrap4.widgets import RadioSelectButtonGroup

class MyForm(forms.Form):
    BUY = 1
    SELL = 2
    BUY_TO_COVER = 3
    SELL_SHORT = 4
    TRANSACTIONS = (
        (BUY, 'Buy'),
        (SELL, 'Sell'),
        (BUY_TO_COVER, 'Buy to Cover'),
        (SELL_SHORT, 'Sell Short'),
    )

    order_type = forms.ChoiceField(
        help_text="Select the order type.",
        required=True,
        label="Order Type:",
        widget=RadioSelectButtonGroup,
        choices=TRANSACTIONS,
        initial=BUY,
    )

Here's what it is rendered as:

Would this be worth including? If so, I'd be happy to whip up a P.R.

I like this very much (Tim e-mailed me the screenshot earlier).
Now that I've seen the poC code, I'd say this is a welcome addition. It stays within vanilla Bootstrap for markup, and uses a good Django citizen style to integrate with the form. Would love some feedback from the community.

We've decided to adopt this. It doesn't require anything but vanilla Bootstrap 4. Full disclosure: it's also something we would like to use in @zostera projects, and this has affected our decision.

One feature I'd like to add is the ability to choose as style other than primary, but for now, it works. :) Thanks, and I'm glad it will be useful to Zostera!