Simple documentation of automatic optimization with learning rate scheduler

📚 Documentation
The documentation for the learning rate scheduler is unclear. It focuses on manual optimization, and automatic optimization is buried in a note without a code example. Adding, the documentation for configure_optimizers is not linked and that section has no examples of configure_optimizers usage.
This has caused confusion in the past, for example:

https://lightning.ai/forums/t/lr-scheduler-with-interval-step-not-working-properly/732
https://github.com/Lightning-AI/lightning/issues/9475
https://github.com/Lightning-AI/lightning/issues/4456

I suggest the section begin with a simple code example with automatic optimization, explaining what will happen for all four cases of frequency and interval being defined or undefined. Alternately, that section linked above should say: "For a simple example of learning rate scheduling with automatic optimization, see the documentation for [configure_optimizers](https://pytorch-lightning.readthedocs.io/en/stable/common/lightning_module.html#configure-optimizers)"
cc @borda

Hey @Borda can i work on this?. Thank you

Hey @Borda can i work on this?. Thank you

Sure, go ahead! and thank you :)

Hi @Borda can i help with this ?

Hi @Borda, is this issue open right now? I would like to work on this.
Thanks

Hi @Borda, can you quickly guide me please on how should I proceed? Where to start looking from?
Thanks

Also the manual_training = True example does not mention that the scheduler must be stepped manually. One could be led to think this is done automatically elsewhere.


Header with tabs: Send, Receive, Earn

See the Main V2 page in Figma:

Rough component outline:

[ ] Header component
[ ] Wallet name & balance
[ ] Send / Receive / Earn
[ ] Settings (gear icon)

I think it makes sense to have some kind of status indicator next to the Earn link (see current implementation), which can show whether or not the Yield Generator service is currently running.

Here's an idea for an activity indicator. Similar to what you might see in apps or a desktop status bar.

Gonna have a look at this now since all issues of the 0.0.3 milestone are already taken and I really like the looks of that header. 😉

Just merged the Settings PR, the road is clear. 👍

Gear icon added in #26


[Insert Modal Field, customNameField, InsertButton, ...etc] How to return defaults from hook functions?

How to return defaults from hook functions that change plugin's behavior? Look at these pseudo code examples made from your real examples:

Insert Modal Field

customNameField = (column, attr, editorClass, ignoreEditable) => {
  if('I need default')
     return [react-bootstrap-table].giveMeDefaultElementHere();
  else
  return (
    <select className={ `${editorClass}` } { ...attr }>
      {
        fruits.map(name => (<option key={ name } value={ name }>{ name }</option>))
      }
    </select>
  );
}

trClassName

trClassFormat(row, rowIndex) {
  if('I need default')
     return row.giveMePluginDefaultValue()
  else
  // row is the current row data
  return rowIndex % 2 === 0 ? "tr-odd" : "tr-even";  // return class name.
}

@wzup, sorry for lately reply, it's busy for me :p
For first case, it's a good point, I'll support it in future.
But for second case, react-bootstrap-table doesn't have any default class on tr, so return null or empty string will be fine.
Thanks

Hello @wzup, for first case, it was fixed on v3.4.4, you can return false then the default editor will be applied, thanks


create new "Single provider website adoptions" project

either @sarahpearson or @mattl or give me permissions thanks

Done.

https://github.com/creativecommons/Single-provider-website-adoptions


Movement speed depends on framerate

Hello,
I was very surprised to see that body position updates don't depend on time passed between two update calls. It makes bodies' speed depending on framerate which is not what we want in most cases.

Extracted from https://github.com/liabru/matter-js/blob/master/src/body/Body.js
I wrote a simple example that shows the problem: https://codepen.io/Feavy/pen/BaoopVw
See the difference:
60 Hz screen

Speed = 800px / 3.444s ~= 232 px/s
144 Hz screen

Speed = 800px / 1.389s = ~575 px/s
Do you have a solution for this problem?
Thanks,
Feavy

I also have some problems, I'm building a game engine using matter for physics and when I'm not using delta and correction, when fps are uncapped (At ~400/500 fps), the speed of all the objects is so fast that it is not usable but seems constant.
Also using delta and correction actually gives me non-constant results. Maybe I'm doing something wrong. But the physics seems off and slow.
Here is my little code :
// In my time manager:
this._lastDeltaTime = this._deltaTime;
this._deltaTime = (performance.now() - this._lastUpdate)/1000;

// In my physic manager:
const delta = this.timeManager.deltaTime * 1000;
const lastdelta = this.timeManager.lastDeltaTime * 1000;
Matter.Engine.update(this.engine, delta, delta / lastdelta);

It drives me crazy, looks good with 1000/60 at 60fps. I don't want to lock my engine framerate too.

If I understand what you mean, the built in runner by default uses a semi-dynamic timestep to avoid slow downs, but this comes at a cost of simulation quality. The built in runner is mostly aimed at demonstration purposes rather than games, but I would like to improve it.
Did you try using a fixed timestep instead? You can do this with the runner or with your own calls to Engine.update.

Yes, using a fixed timestep fixes the problem. I didn't know how it worked when I opened this issue but now I understand it is an obvious solution.
I think you can close this issue.

Hi @Feavy, i hope you are doing well. Could you share your final code? I am facing the same issue.

Hi @Feavy, i hope you are doing well. Could you share your final code? I am facing the same issue.

Hello, I don't remember exactly how I coded it but basically the idea is to trigger a world update every X ms, X depending on the number of world updates you want per second.


Convert model to v2.0

Hi!
I'm try to convert model weights using upgrade_model_version. But I get following error:
Traceback (most recent call last):   File "upgrade_model_version.py", line 194, in <module>     main()   File "upgrade_model_version.py", line 190, in main     convert(args.in_file, args.out_file, args.num_classes)   File "upgrade_model_version.py", line 121, in convert     checkpoint = torch.load(in_file)   File "/usr/local/lib/python3.6/dist-packages/torch/serialization.py", line 529, in load     return _legacy_load(opened_file, map_location, pickle_module, **pickle_load_args)   File "/usr/local/lib/python3.6/dist-packages/torch/serialization.py", line 702, in _legacy_load     result = unpickler.load() MemoryError
Size of file with my model just about 250mb. 16gb RAM is availble in my server and 15gb is free.
Any ideas why this is so.

Hi @rusanager ,
The script fails at torch.load() when loading your checkpoint. You might need to check whether your checkpoint could be loaded by torch.load(), e.g., whether the path is correct, whether your checkpoint is valid. It is not the bug of the script itself, so I am afraid that we cannot do much help here.
You can provide the checkpoint, related config, and your command to run the script thus helping us to reproduce the bug.


Add data mover params to backup

Short description:
Add snapshot_move_data and storage_location fields to backup
More details:
What this PR does / why we need it:
Add the capability to make data mover backups

/verified

/verified

/lgtm

/verified

/cherry-pick v4.15


Slycot installation failing in Travis CI

In the latest builds on python-control, the slycot installation is failing and so unit tests are not being run across the slycot version of the library.  It appears that what is happening is that the conda builds for slycot are out of date and so don't install properly under the Travis CI build script.

Error message from PR #169 when executing python -c "import slycot":
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/home/travis/miniconda/envs/test-environment/lib/python2.7/site-packages/slycot/__init__.py", line 16, in <module>
    from .analysis import ab01nd,ab05md,ab05nd,ab07nd,ab08nd, \
  File "/home/travis/miniconda/envs/test-environment/lib/python2.7/site-packages/slycot/analysis.py", line 21, in <module>
    from . import _wrapper
ImportError: libgfortran.so.3: cannot open shared object file: No such file or directory


Formal equiv diff bsg test bsg_idiv_iterative_top.v

Test bsg_micro_designs/bsg_misc/bsg_idiv_iterative/top.v
This is a trimmed version of the test that exhibit the diff.
// This output is logically incorrect with the plugin
assign opC_sel_o[2] = N57;
Commenting the line above makes the test pass.
top.v.tar.gz

This test is still failing with the Yosys formal engine as inconclusive.


Unable to run an unaltered clone

Hi--
Your boilerplate looks awesome. I cloned it and tried to start it up but got long list of error messages. I know that I have had an issue with global install of shelljs not being findable by jedwards1211/meteor-webpack-react launch that I haven't been able to solve. Could that be related to these error messages below? If not, is it evident why I'm not succeeding to launch?
Many thanks.
[23:14:47] $ node dev.js
<EMAIL_ADDRESS>without ES6 number constructor is up to date
Hash: 6533b4b7ae3df8869325
Version: webpack 1.12.9
Time: 1357ms
Asset    Size  Chunks             Chunk Names
server.bundle.js  190 kB       0  [emitted]  main
server.bundle.js.map  237 kB       0  [emitted]  main
chunk    {0} server.bundle.js, server.bundle.js.map (main) 179 kB [rendered]
70% 1/1 build modulesevents.js:141
throw er; // Unhandled 'error' event
^
Error: listen EADDRINUSE <IP_ADDRESS>:9090
at Object.exports._errnoException (util.js:860:11)
at exports._exceptionWithHostPort (util.js:883:20)
at Server._listen2 (net.js:1234:14)
at listen (net.js:1270:10)
at net.js:1379:9
at doNTCallback3 (node.js:461:9)
at process._tickCallback (node.js:367:17)
[master][davidhandel@DAVIDs-MacBook:~/code/idr-meteor-react]
[23:15:28] 1 $ node dev.js
<EMAIL_ADDRESS>without ES6 number constructor is up to date
Hash: 6533b4b7ae3df8869325
Version: webpack 1.12.9
Time: 1434ms
Asset    Size  Chunks             Chunk Names
server.bundle.js  190 kB       0  [emitted]  main
server.bundle.js.map  237 kB       0  [emitted]  main
chunk    {0} server.bundle.js, server.bundle.js.map (main) 179 kB [rendered]
62% 217/249 build modules[[[[[ ~/code/idr-meteor-react/meteor_core ]]]]]
=> Started proxy.
64% 401/439 build modules=> Started MongoDB.
Hash: a3ba709b40a8fb702436
Version: webpack 1.12.9
Time: 4416ms
Asset     Size  Chunks             Chunk Names
client.bundle.js  2.92 MB       0  [emitted]  main
chunk    {0} client.bundle.js (main) 2.46 MB [rendered]
webpack: bundle is now VALID.
W20151225-23:16:46.587(-5)? (STDERR)
W20151225-23:16:46.588(-5)? (STDERR) /Users/davidhandel/code/idr-meteor-react/meteor_core/.meteor/local/build/programs/server/packages/meteor:/💻app/packages/check/match.js:33
W20151225-23:16:46.588(-5)? (STDERR)     var err = new Match.Error(result.message);
W20151225-23:16:46.588(-5)? (STDERR) ^
W20151225-23:16:46.588(-5)? (STDERR) Error: Match error: Failed Match.Where validation in field region
W20151225-23:16:46.588(-5)? (STDERR)     at check (/Users/davidhandel/code/idr-meteor-react/meteor_core/.meteor/local/build/programs/server/packages/meteor:/💻app/packages/check/match.js:33:1)
W20151225-23:16:46.588(-5)? (STDERR)     at new Slingshot.Directive (/Users/davidhandel/code/idr-meteor-react/meteor_core/.meteor/local/build/programs/server/packages/meteor:/💻app/packages/edgee_slingshot/packages/edgee_slingshot.js:304:1)
W20151225-23:16:46.589(-5)? (STDERR)     at Object.Slingshot.createDirective (/Users/davidhandel/code/idr-meteor-react/meteor_core/.meteor/local/build/programs/server/packages/meteor:/💻app/packages/edgee_slingshot/packages/edgee_slingshot.js:274:1)
W20151225-23:16:46.589(-5)? (STDERR)     at Object.defineProperty.value (/Users/davidhandel/code/idr-meteor-react/webpack/assets/app/lib/ImageUploads.js:2:1)
W20151225-23:16:46.589(-5)? (STDERR)     at webpack_require (/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap 6533b4b7ae3df8869325:19:1)
W20151225-23:16:46.589(-5)? (STDERR)     at Object.defineProperty.value (/Users/davidhandel/code/idr-meteor-react/webpack/assets/app/main_server.js:12:41)
W20151225-23:16:46.589(-5)? (STDERR)     at webpack_require (/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap 6533b4b7ae3df8869325:19:1)
W20151225-23:16:46.589(-5)? (STDERR)     at Object.installedModules (/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap 6533b4b7ae3df8869325:39:1)
W20151225-23:16:46.589(-5)? (STDERR)     at webpack_require (/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap 6533b4b7ae3df8869325:19:1)
W20151225-23:16:46.589(-5)? (STDERR)     at /Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap 6533b4b7ae3df8869325:39:1
W20151225-23:16:46.590(-5)? (STDERR)     at Object. (/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap 6533b4b7ae3df8869325:39:1)
W20151225-23:16:46.590(-5)? (STDERR)     at Module._compile (module.js:456:26)
W20151225-23:16:46.590(-5)? (STDERR)     at Object.Module._extensions..js (module.js:474:10)
W20151225-23:16:46.590(-5)? (STDERR)     at Module.load (module.js:356:32)
W20151225-23:16:46.590(-5)? (STDERR)     at Function.Module._load (module.js:312:12)
W20151225-23:16:46.590(-5)? (STDERR)     at Module.require (module.js:364:17)
=> Exited with code: 1
W20151225-23:16:50.139(-5)? (STDERR)
W20151225-23:16:50.139(-5)? (STDERR) /Users/davidhandel/code/idr-meteor-react/meteor_core/.meteor/local/build/programs/server/packages/meteor:/💻app/packages/check/match.js:33
W20151225-23:16:50.139(-5)? (STDERR)     var err = new Match.Error(result.message);
W20151225-23:16:50.140(-5)? (STDERR) ^
W20151225-23:16:50.140(-5)? (STDERR) Error: Match error: Failed Match.Where validation in field region
W20151225-23:16:50.140(-5)? (STDERR)     at check (/Users/davidhandel/code/idr-meteor-react/meteor_core/.meteor/local/build/programs/server/packages/meteor:/💻app/packages/check/match.js:33:1)
W20151225-23:16:50.140(-5)? (STDERR)     at new Slingshot.Directive (/Users/davidhandel/code/idr-meteor-react/meteor_core/.meteor/local/build/programs/server/packages/meteor:/💻app/packages/edgee_slingshot/packages/edgee_slingshot.js:304:1)
W20151225-23:16:50.140(-5)? (STDERR)     at Object.Slingshot.createDirective (/Users/davidhandel/code/idr-meteor-react/meteor_core/.meteor/local/build/programs/server/packages/meteor:/💻app/packages/edgee_slingshot/packages/edgee_slingshot.js:274:1)
W20151225-23:16:50.140(-5)? (STDERR)     at Object.defineProperty.value (/Users/davidhandel/code/idr-meteor-react/webpack/assets/app/lib/ImageUploads.js:2:1)
W20151225-23:16:50.140(-5)? (STDERR)     at webpack_require (/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap 6533b4b7ae3df8869325:19:1)
W20151225-23:16:50.140(-5)? (STDERR)     at Object.defineProperty.value (/Users/davidhandel/code/idr-meteor-react/webpack/assets/app/main_server.js:12:41)
W20151225-23:16:50.140(-5)? (STDERR)     at webpack_require (/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap 6533b4b7ae3df8869325:19:1)
W20151225-23:16:50.140(-5)? (STDERR)     at Object.installedModules (/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap 6533b4b7ae3df8869325:39:1)
W20151225-23:16:50.140(-5)? (STDERR)     at webpack_require (/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap 6533b4b7ae3df8869325:19:1)
W20151225-23:16:50.141(-5)? (STDERR)     at /Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap 6533b4b7ae3df8869325:39:1
W20151225-23:16:50.141(-5)? (STDERR)     at Object. (/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap 6533b4b7ae3df8869325:39:1)
W20151225-23:16:50.141(-5)? (STDERR)     at Module._compile (module.js:456:26)
W20151225-23:16:50.141(-5)? (STDERR)     at Object.Module._extensions..js (module.js:474:10)
W20151225-23:16:50.141(-5)? (STDERR)     at Module.load (module.js:356:32)
W20151225-23:16:50.141(-5)? (STDERR)     at Function.Module._load (module.js:312:12)
W20151225-23:16:50.141(-5)? (STDERR)     at Module.require (module.js:364:17)
=> Exited with code: 1
W20151225-23:16:53.456(-5)? (STDERR)
W20151225-23:16:53.457(-5)? (STDERR) /Users/davidhandel/code/idr-meteor-react/meteor_core/.meteor/local/build/programs/server/packages/meteor:/💻app/packages/check/match.js:33
W20151225-23:16:53.457(-5)? (STDERR)     var err = new Match.Error(result.message);
W20151225-23:16:53.457(-5)? (STDERR) ^
W20151225-23:16:53.457(-5)? (STDERR) Error: Match error: Failed Match.Where validation in field region
W20151225-23:16:53.457(-5)? (STDERR)     at check (/Users/davidhandel/code/idr-meteor-react/meteor_core/.meteor/local/build/programs/server/packages/meteor:/💻app/packages/check/match.js:33:1)
W20151225-23:16:53.457(-5)? (STDERR)     at new Slingshot.Directive (/Users/davidhandel/code/idr-meteor-react/meteor_core/.meteor/local/build/programs/server/packages/meteor:/💻app/packages/edgee_slingshot/packages/edgee_slingshot.js:304:1)
W20151225-23:16:53.457(-5)? (STDERR)     at Object.Slingshot.createDirective (/Users/davidhandel/code/idr-meteor-react/meteor_core/.meteor/local/build/programs/server/packages/meteor:/💻app/packages/edgee_slingshot/packages/edgee_slingshot.js:274:1)
W20151225-23:16:53.457(-5)? (STDERR)     at Object.defineProperty.value (/Users/davidhandel/code/idr-meteor-react/webpack/assets/app/lib/ImageUploads.js:2:1)
W20151225-23:16:53.457(-5)? (STDERR)     at webpack_require (/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap 6533b4b7ae3df8869325:19:1)
W20151225-23:16:53.457(-5)? (STDERR)     at Object.defineProperty.value (/Users/davidhandel/code/idr-meteor-react/webpack/assets/app/main_server.js:12:41)
W20151225-23:16:53.458(-5)? (STDERR)     at webpack_require (/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap 6533b4b7ae3df8869325:19:1)
W20151225-23:16:53.458(-5)? (STDERR)     at Object.installedModules (/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap 6533b4b7ae3df8869325:39:1)
W20151225-23:16:53.458(-5)? (STDERR)     at webpack_require (/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap 6533b4b7ae3df8869325:19:1)
W20151225-23:16:53.458(-5)? (STDERR)     at /Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap 6533b4b7ae3df8869325:39:1
W20151225-23:16:53.458(-5)? (STDERR)     at Object. (/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap 6533b4b7ae3df8869325:39:1)
W20151225-23:16:53.458(-5)? (STDERR)     at Module._compile (module.js:456:26)
W20151225-23:16:53.458(-5)? (STDERR)     at Object.Module._extensions..js (module.js:474:10)
W20151225-23:16:53.458(-5)? (STDERR)     at Module.load (module.js:356:32)
W20151225-23:16:53.459(-5)? (STDERR)     at Function.Module._load (module.js:312:12)
W20151225-23:16:53.459(-5)? (STDERR)     at Module.require (module.js:364:17)
=> Exited with code: 1
=> Your application is crashing. Waiting for file change.

Hey David - Sorry about that.
It looks like it's something with the Amazon s3 uploader run by
Edgee:slingshot meteor package. I've messed with the settings a bit and how
it works sort of depends on how you have it setup on Amazon.
In app/lib/imageuploads.js can you try removing lines 4 and 30? It allows
you to set a bucket region, but I think it defaults to US East fine without
it and it helped me.
If that doesn't work, can you let me know?
Thanks
On Fri, Dec 25, 2015 at 11:26 PM, David Handel<EMAIL_ADDRESS>wrote:

Hi--
Your boilerplate looks awesome. I cloned it and tried to start it up but
got long list of error messages. I know that I have had an issue with
global install of shelljs not being findable by
jedwards1211/meteor-webpack-react launch that I haven't been able to solve.
Could that be related to these error messages below? If not, is it evident
why I'm not succeeding to launch?
Many thanks.
[23:14:47] $ node dev.js
<EMAIL_ADDRESS>without ES6 number constructor is up to date
Hash: 6533b4b7ae3df8869325
Version: webpack 1.12.9
Time: 1357ms
Asset Size Chunks Chunk Names
server.bundle.js 190 kB 0 [emitted] main
server.bundle.js.map 237 kB 0 [emitted] main
chunk {0} server.bundle.js, server.bundle.js.map (main) 179 kB [rendered]
70% 1/1 build modulesevents.js:141
throw er; // Unhandled 'error' event
^
Error: listen EADDRINUSE <IP_ADDRESS>:9090
at Object.exports._errnoException (util.js:860:11)
at exports._exceptionWithHostPort (util.js:883:20)
at Server._listen2 (net.js[image: :1234:]14)
at listen (net.js:1270:10)
at net.js:1379:9
at doNTCallback3 (node.js:461:9)
at process._tickCallback (node.js:367:17)
[master][davidhandel@DAVIDs-MacBook:~/code/idr-meteor-react]
[23:15:28] 1 $ node dev.js
<EMAIL_ADDRESS>without ES6 number constructor is up to date
Hash: 6533b4b7ae3df8869325
Version: webpack 1.12.9
Time: 1434ms
Asset Size Chunks Chunk Names
server.bundle.js 190 kB 0 [emitted] main
server.bundle.js.map 237 kB 0 [emitted] main
chunk {0} server.bundle.js, server.bundle.js.map (main) 179 kB [rendered]
62% 217/249 build modules[[[[[ ~/code/idr-meteor-react/meteor_core ]]]]]
=> Started proxy.
64% 401/439 build modules=> Started MongoDB.
Hash: a3ba709b40a8fb702436
Version: webpack 1.12.9
Time: 4416ms
Asset Size Chunks Chunk Names
client.bundle.js 2.92 MB 0 [emitted] main
chunk {0} client.bundle.js (main) 2.46 MB [rendered]
webpack: bundle is now VALID.
W20151225-23:16:46.587(-5)? (STDERR)
W20151225-23:16:46.588(-5)? (STDERR)
/Users/davidhandel/code/idr-meteor-react/meteor_core/.meteor/local/build/programs/server/packages/meteor:/
💻app/packages/check/match.js:33
W20151225-23:16:46.588(-5)? (STDERR) var err = new
Match.Error(result.message);
W20151225-23:16:46.588(-5)? (STDERR) ^
W20151225-23:16:46.588(-5)? (STDERR) Error: Match error: Failed
Match.Where validation in field region
W20151225-23:16:46.588(-5)? (STDERR) at check
(/Users/davidhandel/code/idr-meteor-react/meteor_core/.meteor/local/build/programs/server/packages/meteor:/
💻app/packages/check/match.js:33:1)
W20151225-23:16:46.588(-5)? (STDERR) at new Slingshot.Directive
(/Users/davidhandel/code/idr-meteor-react/meteor_core/.meteor/local/build/programs/server/packages/meteor:/
💻app/packages/edgee_slingshot/packages/edgee_slingshot.js:304:1)
W20151225-23:16:46.589(-5)? (STDERR) at Object.Slingshot.createDirective
(/Users/davidhandel/code/idr-meteor-react/meteor_core/.meteor/local/build/programs/server/packages/meteor:/
💻app/packages/edgee_slingshot/packages/edgee_slingshot.js:274:1)
W20151225-23:16:46.589(-5)? (STDERR) at Object.defineProperty.value
(/Users/davidhandel/code/idr-meteor-react/webpack/assets/app/lib/ImageUploads.js:2:1)
W20151225-23:16:46.589(-5)? (STDERR) at webpack_require
(/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap
6533b4b7ae3df8869325:19:1)
W20151225-23:16:46.589(-5)? (STDERR) at Object.defineProperty.value
(/Users/davidhandel/code/idr-meteor-react/webpack/assets/app/main_server.js:12:41)
W20151225-23:16:46.589(-5)? (STDERR) at webpack_require
(/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap
6533b4b7ae3df8869325:19:1)
W20151225-23:16:46.589(-5)? (STDERR) at Object.installedModules
(/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap
6533b4b7ae3df8869325:39:1)
W20151225-23:16:46.589(-5)? (STDERR) at webpack_require
(/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap
6533b4b7ae3df8869325:19:1)
W20151225-23:16:46.589(-5)? (STDERR) at
/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap
6533b4b7ae3df8869325:39:1
W20151225-23:16:46.590(-5)? (STDERR) at Object.
(/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap
6533b4b7ae3df8869325:39:1)
W20151225-23:16:46.590(-5)? (STDERR) at Module.
compile (module.js:456:26) W20151225-23:16:46.590(-5)? (STDERR) at
Object.Module.extensions..js (module.js:474:10) W20151225-23:16:46.590(-5)?
(STDERR) at Module.load (module.js:356:32) W20151225-23:16:46.590(-5)?
(STDERR) at Function.Module._load (module.js:312:12)
W20151225-23:16:46.590(-5)? (STDERR) at Module.require (module.js:364:17)
=> Exited with code: 1 W20151225-23:16:50.139(-5)? (STDERR)
W20151225-23:16:50.139(-5)? (STDERR)
/Users/davidhandel/code/idr-meteor-react/meteor_core/.meteor/local/build/programs/server/packages/meteor:/💻app/packages/check/match.js:33
W20151225-23:16:50.139(-5)? (STDERR) var err = new
Match.Error(result.message); W20151225-23:16:50.140(-5)? (STDERR) ^
W20151225-23:16:50.140(-5)? (STDERR) Error: Match error: Failed Match.Where
validation in field region W20151225-23:16:50.140(-5)? (STDERR) at check
(/Users/davidhandel/code/idr-meteor-react/meteor_core/.meteor/local/build/programs/server/packages/meteor:/💻app/packages/check/match.js:33:1)
W20151225-23:16:50.140(-5)? (STDERR) at new Slingshot.Directive
(/Users/davidhandel/code/idr-meteor-react/meteor_core/.meteor/local/build/programs/server/packages/meteor:/💻app/packages/edgee_slingshot/packages/edgee_slingshot.js:304:1)
W20151225-23:16:50.140(-5)? (STDERR) at Object.Slingshot.createDirective
(/Users/davidhandel/code/idr-meteor-react/meteor_core/.meteor/local/build/programs/server/packages/meteor:/💻app/packages/edgee_slingshot/packages/edgee_slingshot.js:274:1)
W20151225-23:16:50.140(-5)? (STDERR) at Object.defineProperty.value
(/Users/davidhandel/code/idr-meteor-react/webpack/assets/app/lib/ImageUploads.js:2:1)
W20151225-23:16:50.140(-5)? (STDERR) at __webpack_require
(/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap
6533b4b7ae3df8869325:19:1)
W20151225-23:16:50.140(-5)? (STDERR) at Object.defineProperty.value
(/Users/davidhandel/code/idr-meteor-react/webpack/assets/app/main_server.js:12:41)
W20151225-23:16:50.140(-5)? (STDERR) at webpack_require
(/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap
6533b4b7ae3df8869325:19:1)
W20151225-23:16:50.140(-5)? (STDERR) at Object.installedModules
(/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap
6533b4b7ae3df8869325:39:1)
W20151225-23:16:50.140(-5)? (STDERR) at webpack_require
(/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap
6533b4b7ae3df8869325:19:1)
W20151225-23:16:50.141(-5)? (STDERR) at
/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap
6533b4b7ae3df8869325:39:1
W20151225-23:16:50.141(-5)? (STDERR) at Object.
(/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap
6533b4b7ae3df8869325:39:1)
W20151225-23:16:50.141(-5)? (STDERR) at Module.
compile (module.js:456:26) W20151225-23:16:50.141(-5)? (STDERR) at
Object.Module.extensions..js (module.js:474:10) W20151225-23:16:50.141(-5)?
(STDERR) at Module.load (module.js:356:32) W20151225-23:16:50.141(-5)?
(STDERR) at Function.Module._load (module.js:312:12)
W20151225-23:16:50.141(-5)? (STDERR) at Module.require (module.js:364:17)
=> Exited with code: 1 W20151225-23:16:53.456(-5)? (STDERR)
W20151225-23:16:53.457(-5)? (STDERR)
/Users/davidhandel/code/idr-meteor-react/meteor_core/.meteor/local/build/programs/server/packages/meteor:/💻app/packages/check/match.js:33
W20151225-23:16:53.457(-5)? (STDERR) var err = new
Match.Error(result.message); W20151225-23:16:53.457(-5)? (STDERR) ^
W20151225-23:16:53.457(-5)? (STDERR) Error: Match error: Failed Match.Where
validation in field region W20151225-23:16:53.457(-5)? (STDERR) at check
(/Users/davidhandel/code/idr-meteor-react/meteor_core/.meteor/local/build/programs/server/packages/meteor:/💻app/packages/check/match.js:33:1)
W20151225-23:16:53.457(-5)? (STDERR) at new Slingshot.Directive
(/Users/davidhandel/code/idr-meteor-react/meteor_core/.meteor/local/build/programs/server/packages/meteor:/💻app/packages/edgee_slingshot/packages/edgee_slingshot.js:304:1)
W20151225-23:16:53.457(-5)? (STDERR) at Object.Slingshot.createDirective
(/Users/davidhandel/code/idr-meteor-react/meteor_core/.meteor/local/build/programs/server/packages/meteor:/💻app/packages/edgee_slingshot/packages/edgee_slingshot.js:274:1)
W20151225-23:16:53.457(-5)? (STDERR) at Object.defineProperty.value
(/Users/davidhandel/code/idr-meteor-react/webpack/assets/app/lib/ImageUploads.js:2:1)
W20151225-23:16:53.457(-5)? (STDERR) at __webpack_require
(/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap
6533b4b7ae3df8869325:19:1)
W20151225-23:16:53.457(-5)? (STDERR) at Object.defineProperty.value
(/Users/davidhandel/code/idr-meteor-react/webpack/assets/app/main_server.js:12:41)
W20151225-23:16:53.458(-5)? (STDERR) at webpack_require
(/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap
6533b4b7ae3df8869325:19:1)
W20151225-23:16:53.458(-5)? (STDERR) at Object.installedModules
(/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap
6533b4b7ae3df8869325:39:1)
W20151225-23:16:53.458(-5)? (STDERR) at webpack_require
(/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap
6533b4b7ae3df8869325:19:1)
W20151225-23:16:53.458(-5)? (STDERR) at
/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap
6533b4b7ae3df8869325:39:1
W20151225-23:16:53.458(-5)? (STDERR) at Object.
(/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap
6533b4b7ae3df8869325:39:1)
W20151225-23:16:53.458(-5)? (STDERR) at Module._compile (module.js:456:26)
W20151225-23:16:53.458(-5)? (STDERR) at Object.Module._extensions..js
(module.js:474:10)
W20151225-23:16:53.458(-5)? (STDERR) at Module.load (module.js:356:32)
W20151225-23:16:53.459(-5)? (STDERR) at Function.Module._load
(module.js:312:12)
W20151225-23:16:53.459(-5)? (STDERR) at Module.require (module.js:364:17)
=> Exited with code: 1
=> Your application is crashing. Waiting for file change.
—
Reply to this email directly or view it on GitHub
https://github.com/taskandtool/saas-starter/issues/7.

Thanks Gavin! That did the trick. I can't wait to play with this.
On Sat, Dec 26, 2015 at 7:57 AM, Gavin Walsh<EMAIL_ADDRESS>wrote:

Hey David - Sorry about that.
It looks like it's something with the Amazon s3 uploader run by
Edgee:slingshot meteor package. I've messed with the settings a bit and how
it works sort of depends on how you have it setup on Amazon.
In app/lib/imageuploads.js can you try removing lines 4 and 30? It allows
you to set a bucket region, but I think it defaults to US East fine without
it and it helped me.
If that doesn't work, can you let me know?
Thanks
On Fri, Dec 25, 2015 at 11:26 PM, David Handel<EMAIL_ADDRESS>wrote:

Hi--
Your boilerplate looks awesome. I cloned it and tried to start it up but
got long list of error messages. I know that I have had an issue with
global install of shelljs not being findable by
jedwards1211/meteor-webpack-react launch that I haven't been able to
solve.
Could that be related to these error messages below? If not, is it
evident
why I'm not succeeding to launch?
Many thanks.
[23:14:47] $ node dev.js
<EMAIL_ADDRESS>without ES6 number constructor is up to date
Hash: 6533b4b7ae3df8869325
Version: webpack 1.12.9
Time: 1357ms
Asset Size Chunks Chunk Names
server.bundle.js 190 kB 0 [emitted] main
server.bundle.js.map 237 kB 0 [emitted] main
chunk {0} server.bundle.js, server.bundle.js.map (main) 179 kB [rendered]
70% 1/1 build modulesevents.js:141
throw er; // Unhandled 'error' event
^
Error: listen EADDRINUSE <IP_ADDRESS>:9090
at Object.exports._errnoException (util.js:860:11)
at exports._exceptionWithHostPort (util.js:883:20)
at Server._listen2 (net.js[image: :1234:]14)
at listen (net.js:1270:10)
at net.js:1379:9
at doNTCallback3 (node.js:461:9)
at process._tickCallback (node.js:367:17)
[master][davidhandel@DAVIDs-MacBook:~/code/idr-meteor-react]
[23:15:28] 1 $ node dev.js
<EMAIL_ADDRESS>without ES6 number constructor is up to date
Hash: 6533b4b7ae3df8869325
Version: webpack 1.12.9
Time: 1434ms
Asset Size Chunks Chunk Names
server.bundle.js 190 kB 0 [emitted] main
server.bundle.js.map 237 kB 0 [emitted] main
chunk {0} server.bundle.js, server.bundle.js.map (main) 179 kB [rendered]
62% 217/249 build modules[[[[[ ~/code/idr-meteor-react/meteor_core ]]]]]
=> Started proxy.
64% 401/439 build modules=> Started MongoDB.
Hash: a3ba709b40a8fb702436
Version: webpack 1.12.9
Time: 4416ms
Asset Size Chunks Chunk Names
client.bundle.js 2.92 MB 0 [emitted] main
chunk {0} client.bundle.js (main) 2.46 MB [rendered]
webpack: bundle is now VALID.
W20151225-23:16:46.587(-5)? (STDERR)
W20151225-23:16:46.588(-5)? (STDERR)

/Users/davidhandel/code/idr-meteor-react/meteor_core/.meteor/local/build/programs/server/packages/meteor:/

💻app/packages/check/match.js:33
W20151225-23:16:46.588(-5)? (STDERR) var err = new
Match.Error(result.message);
W20151225-23:16:46.588(-5)? (STDERR) ^
W20151225-23:16:46.588(-5)? (STDERR) Error: Match error: Failed
Match.Where validation in field region
W20151225-23:16:46.588(-5)? (STDERR) at check

(/Users/davidhandel/code/idr-meteor-react/meteor_core/.meteor/local/build/programs/server/packages/meteor:/

💻app/packages/check/match.js:33:1)
W20151225-23:16:46.588(-5)? (STDERR) at new Slingshot.Directive

(/Users/davidhandel/code/idr-meteor-react/meteor_core/.meteor/local/build/programs/server/packages/meteor:/

💻app/packages/edgee_slingshot/packages/edgee_slingshot.js:304:1)
W20151225-23:16:46.589(-5)? (STDERR) at Object.Slingshot.createDirective

(/Users/davidhandel/code/idr-meteor-react/meteor_core/.meteor/local/build/programs/server/packages/meteor:/

💻app/packages/edgee_slingshot/packages/edgee_slingshot.js:274:1)
W20151225-23:16:46.589(-5)? (STDERR) at Object.defineProperty.value

(/Users/davidhandel/code/idr-meteor-react/webpack/assets/app/lib/ImageUploads.js:2:1)

W20151225-23:16:46.589(-5)? (STDERR) at webpack_require

(/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap

6533b4b7ae3df8869325:19:1)
W20151225-23:16:46.589(-5)? (STDERR) at Object.defineProperty.value

(/Users/davidhandel/code/idr-meteor-react/webpack/assets/app/main_server.js:12:41)

W20151225-23:16:46.589(-5)? (STDERR) at webpack_require

(/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap

6533b4b7ae3df8869325:19:1)
W20151225-23:16:46.589(-5)? (STDERR) at Object.installedModules

(/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap

6533b4b7ae3df8869325:39:1)
W20151225-23:16:46.589(-5)? (STDERR) at webpack_require

(/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap

6533b4b7ae3df8869325:19:1)
W20151225-23:16:46.589(-5)? (STDERR) at

/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap

6533b4b7ae3df8869325:39:1
W20151225-23:16:46.590(-5)? (STDERR) at Object.

(/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap

6533b4b7ae3df8869325:39:1)
W20151225-23:16:46.590(-5)? (STDERR) at Module.
*compile (module.js:456:26) W20151225-23:16:46.590(-5)? (STDERR) at
Object.Module.extensions..js (module.js:474:10)
W20151225-23:16:46.590(-5)?
(STDERR) at Module.load (module.js:356:32) W20151225-23:16:46.590(-5)?
(STDERR) at Function.Module._load (module.js:312:12)
W20151225-23:16:46.590(-5)? (STDERR) at Module.require (module.js:364:17)
=> Exited with code: 1 W20151225-23:16:50.139(-5)? (STDERR)
W20151225-23:16:50.139(-5)? (STDERR)

/Users/davidhandel/code/idr-meteor-react/meteor_core/.meteor/local/build/programs/server/packages/meteor:/💻app/packages/check/match.js:33

W20151225-23:16:50.139(-5)? (STDERR) var err = new
Match.Error(result.message); W20151225-23:16:50.140(-5)? (STDERR) ^
W20151225-23:16:50.140(-5)? (STDERR) Error: Match error: Failed
Match.Where
validation in field region W20151225-23:16:50.140(-5)? (STDERR) at check

(/Users/davidhandel/code/idr-meteor-react/meteor_core/.meteor/local/build/programs/server/packages/meteor:/💻app/packages/check/match.js:33:1)

W20151225-23:16:50.140(-5)? (STDERR) at new Slingshot.Directive

(/Users/davidhandel/code/idr-meteor-react/meteor_core/.meteor/local/build/programs/server/packages/meteor:/💻app/packages/edgee_slingshot/packages/edgee_slingshot.js:304:1)

W20151225-23:16:50.140(-5)? (STDERR) at Object.Slingshot.createDirective

(/Users/davidhandel/code/idr-meteor-react/meteor_core/.meteor/local/build/programs/server/packages/meteor:/💻app/packages/edgee_slingshot/packages/edgee_slingshot.js:274:1)

W20151225-23:16:50.140(-5)? (STDERR) at Object.defineProperty.value

(/Users/davidhandel/code/idr-meteor-react/webpack/assets/app/lib/ImageUploads.js:2:1)

W20151225-23:16:50.140(-5)? (STDERR) at __webpack_require*

(/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap

6533b4b7ae3df8869325:19:1)
W20151225-23:16:50.140(-5)? (STDERR) at Object.defineProperty.value

(/Users/davidhandel/code/idr-meteor-react/webpack/assets/app/main_server.js:12:41)

W20151225-23:16:50.140(-5)? (STDERR) at webpack_require

(/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap

6533b4b7ae3df8869325:19:1)
W20151225-23:16:50.140(-5)? (STDERR) at Object.installedModules

(/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap

6533b4b7ae3df8869325:39:1)
W20151225-23:16:50.140(-5)? (STDERR) at webpack_require

(/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap

6533b4b7ae3df8869325:19:1)
W20151225-23:16:50.141(-5)? (STDERR) at

/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap

6533b4b7ae3df8869325:39:1
W20151225-23:16:50.141(-5)? (STDERR) at Object.

(/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap

6533b4b7ae3df8869325:39:1)
W20151225-23:16:50.141(-5)? (STDERR) at Module.
*compile (module.js:456:26) W20151225-23:16:50.141(-5)? (STDERR) at
Object.Module.extensions..js (module.js:474:10)
W20151225-23:16:50.141(-5)?
(STDERR) at Module.load (module.js:356:32) W20151225-23:16:50.141(-5)?
(STDERR) at Function.Module._load (module.js:312:12)
W20151225-23:16:50.141(-5)? (STDERR) at Module.require (module.js:364:17)
=> Exited with code: 1 W20151225-23:16:53.456(-5)? (STDERR)
W20151225-23:16:53.457(-5)? (STDERR)

/Users/davidhandel/code/idr-meteor-react/meteor_core/.meteor/local/build/programs/server/packages/meteor:/💻app/packages/check/match.js:33

W20151225-23:16:53.457(-5)? (STDERR) var err = new
Match.Error(result.message); W20151225-23:16:53.457(-5)? (STDERR) ^
W20151225-23:16:53.457(-5)? (STDERR) Error: Match error: Failed
Match.Where
validation in field region W20151225-23:16:53.457(-5)? (STDERR) at check

(/Users/davidhandel/code/idr-meteor-react/meteor_core/.meteor/local/build/programs/server/packages/meteor:/💻app/packages/check/match.js:33:1)

W20151225-23:16:53.457(-5)? (STDERR) at new Slingshot.Directive

(/Users/davidhandel/code/idr-meteor-react/meteor_core/.meteor/local/build/programs/server/packages/meteor:/💻app/packages/edgee_slingshot/packages/edgee_slingshot.js:304:1)

W20151225-23:16:53.457(-5)? (STDERR) at Object.Slingshot.createDirective

(/Users/davidhandel/code/idr-meteor-react/meteor_core/.meteor/local/build/programs/server/packages/meteor:/💻app/packages/edgee_slingshot/packages/edgee_slingshot.js:274:1)

W20151225-23:16:53.457(-5)? (STDERR) at Object.defineProperty.value

(/Users/davidhandel/code/idr-meteor-react/webpack/assets/app/lib/ImageUploads.js:2:1)

W20151225-23:16:53.457(-5)? (STDERR) at __webpack_require*

(/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap

6533b4b7ae3df8869325:19:1)
W20151225-23:16:53.457(-5)? (STDERR) at Object.defineProperty.value

(/Users/davidhandel/code/idr-meteor-react/webpack/assets/app/main_server.js:12:41)

W20151225-23:16:53.458(-5)? (STDERR) at webpack_require

(/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap

6533b4b7ae3df8869325:19:1)
W20151225-23:16:53.458(-5)? (STDERR) at Object.installedModules

(/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap

6533b4b7ae3df8869325:39:1)
W20151225-23:16:53.458(-5)? (STDERR) at webpack_require

(/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap

6533b4b7ae3df8869325:19:1)
W20151225-23:16:53.458(-5)? (STDERR) at

/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap

6533b4b7ae3df8869325:39:1
W20151225-23:16:53.458(-5)? (STDERR) at Object.

(/Users/davidhandel/code/idr-meteor-react/webpack/assets/webpack:/webpack/bootstrap

6533b4b7ae3df8869325:39:1)
W20151225-23:16:53.458(-5)? (STDERR) at Module._compile
(module.js:456:26)
W20151225-23:16:53.458(-5)? (STDERR) at Object.Module._extensions..js
(module.js:474:10)
W20151225-23:16:53.458(-5)? (STDERR) at Module.load (module.js:356:32)
W20151225-23:16:53.459(-5)? (STDERR) at Function.Module._load
(module.js:312:12)
W20151225-23:16:53.459(-5)? (STDERR) at Module.require (module.js:364:17)
=> Exited with code: 1
=> Your application is crashing. Waiting for file change.
—
Reply to this email directly or view it on GitHub
https://github.com/taskandtool/saas-starter/issues/7.

—
Reply to this email directly or view it on GitHub
https://github.com/taskandtool/saas-starter/issues/7#issuecomment-167322728
.


auto chose rect

The auto was always choosing rectX or rectY, but sometimes we want rect because it has more appropriate pointing behavior. Ref. https://twitter.com/angiehjort/status/1658474295788724229

Going to merge optimistically but @Fil please let me know if you want me to change anything! 🙏

👍


NNBD. Analyzer and CFE reports errors on different lines

I'm not sure if this an issue or not, but, report it just in case. Please close it, if it is not an issue.
In some cases analyzer and CFE report errors on different lines of code. For example
class A {}

class C1 {
  A a;
//  ^
// [cfe] unspecified
  String s;
//       ^
// [cfe] unspecified
  C1() {}
//^^
// [analyzer] COMPILE_TIME_ERROR.NOT_INITIALIZED_NON_NULLABLE_INSTANCE_FIELD

}

main() {
  new C1();
}

As you can see analyzer reports errors on constructor but CFE on the fields itself. Is it ok?
dartanalyzer version 2.8.0-dev.18.0

I believe it would be a requirement which is a little bit too constraining if we say that all diagnostic messages must be associated with exactly the same character positions in the source code. Luckily, I think the test runner doesn't have a problem with annotations where the positions are different.
@johnniwinther, @scheglov, WDYT?

I think that CFE and analyzer should move toward reporting the same diagnostics in the same locations as much as possible/reasonable, because it provides a better UX, but I don't believe that we want the specification to dictate where diagnostics should be reported. I also think that it's going to take a long time to achieve that goal, and there might always be situations in which they will always be different.
Out of curiosity, where does CFE report the error if some constructors initialize the field and others don't:
class C {
  String s;
  C.a(this.s);
  C.b();
}

@bwilkerson current CFE reports the following error
class C {
  String s; // Error: This constructor should initialize field 's' because its type 'String' doesn't allow null.
            // String s;
            //        ^
  C.a(this.s);
  C.b();
}

I agree with Brian that ideally diagnostics should be the same, but this is a new requirement, and it would take a long time to do if we decide so.
For this specific case I think analyzer's location is better, because the issue in the code is that a specific constructor does not initialize a field. And so, this constructor (or constructors) should be marked.

I agree with @bwilkerson and @scheglov.
For this particular issue the CFE should update its reporting.

Here's a proposal for a rule of thumb in this area:
If a tool emits a diagnostic message at a location which is suboptimal for some reasonably objective reason, we'll create an issue on that as such; if another tool seems to make a better choice then that's an obvious thing to mention this kind of issue. If several tools make confusing choices there'd be multiple issues, with one 'area-meta' issue to explain the overall topic and a proposed choice. This approach would automatically make the diagnostic locations converge to some extent.
This means that we basically don't care about smaller discrepancies in diagnostic locations per se, but we rely on concrete problems caused by these discrepancies to give us an automatic convergence effect.
How do you like that?

Sound good.

Sounds good to me too, although I might suggest that we create only the "meta" issue initially as a place to discuss the right solution, then create the appropriate product-specific issues after we've decided how it should be fixed for each product.

Sorry about hijacking this issue for the diagnostic location topic. I think we've agreed to focus on concrete issues with the location, not on strict consistency.
This issue is then again only about the CFE putting the initialization error on the field, rather than on the offending constructor. ;-)

Sounds good to me.


Succeed to deploy to Static Website after deleting the storage account during deployment

OS: Win10
Build Version: 20200508.1
Repro Steps:

Open a project in vscode
Create a storage account-->Right click this storage account--> Deploy to Static Website-->Select this project
Delete this storage account during deployment.

Expect:
Fail to deployment.
Actual:
Deploy to Static Website successfully without any error.

More info:

Browse to website failed after deployment.
Output logs:
Creating resource group "elsatest03" in location "westus"...
Successfully created resource group "elsatest03".
Creating storage account "elsatest0" in location "westus" with sku "Standard_LRS"...
Successfully created storage account "elsatest0".
Querying Azure... Method: listBlobsFlat blobContainerName: "$web" prefix: ""
Deploying to static website elsatest0/$web
Uploading "c:/Users/AzureTest/Desktop/dist/favicons-c2a605fbc0e687b2e1b4b90a7c445cdd/.cache" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/favicons-c2a605fbc0e687b2e1b4b90a7c445cdd/android-chrome-144x144.png" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/favicons-c2a605fbc0e687b2e1b4b90a7c445cdd/android-chrome-192x192.png" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/favicons-c2a605fbc0e687b2e1b4b90a7c445cdd/android-chrome-256x256.png" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/favicons-c2a605fbc0e687b2e1b4b90a7c445cdd/android-chrome-36x36.png" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/favicons-c2a605fbc0e687b2e1b4b90a7c445cdd/android-chrome-384x384.png" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/favicons-c2a605fbc0e687b2e1b4b90a7c445cdd/android-chrome-48x48.png" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/favicons-c2a605fbc0e687b2e1b4b90a7c445cdd/android-chrome-512x512.png" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/favicons-c2a605fbc0e687b2e1b4b90a7c445cdd/android-chrome-72x72.png" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/favicons-c2a605fbc0e687b2e1b4b90a7c445cdd/android-chrome-96x96.png" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/favicons-c2a605fbc0e687b2e1b4b90a7c445cdd/apple-touch-icon-114x114.png" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/favicons-c2a605fbc0e687b2e1b4b90a7c445cdd/apple-touch-icon-120x120.png" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/favicons-c2a605fbc0e687b2e1b4b90a7c445cdd/apple-touch-icon-144x144.png" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/favicons-c2a605fbc0e687b2e1b4b90a7c445cdd/apple-touch-icon-152x152.png" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/favicons-c2a605fbc0e687b2e1b4b90a7c445cdd/apple-touch-icon-167x167.png" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/favicons-c2a605fbc0e687b2e1b4b90a7c445cdd/apple-touch-icon-180x180.png" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/favicons-c2a605fbc0e687b2e1b4b90a7c445cdd/apple-touch-icon-57x57.png" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/favicons-c2a605fbc0e687b2e1b4b90a7c445cdd/apple-touch-icon-60x60.png" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/favicons-c2a605fbc0e687b2e1b4b90a7c445cdd/apple-touch-icon-72x72.png" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/favicons-c2a605fbc0e687b2e1b4b90a7c445cdd/apple-touch-icon-76x76.png" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/favicons-c2a605fbc0e687b2e1b4b90a7c445cdd/apple-touch-icon-precomposed.png" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/favicons-c2a605fbc0e687b2e1b4b90a7c445cdd/apple-touch-icon.png" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/favicons-c2a605fbc0e687b2e1b4b90a7c445cdd/apple-touch-startup-image-1182x2208.png" to "$web"...
Deleting storage account "elsatest0"...
Uploading "c:/Users/AzureTest/Desktop/dist/favicons-c2a605fbc0e687b2e1b4b90a7c445cdd/apple-touch-startup-image-1242x2148.png" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/favicons-c2a605fbc0e687b2e1b4b90a7c445cdd/apple-touch-startup-image-1496x2048.png" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/favicons-c2a605fbc0e687b2e1b4b90a7c445cdd/apple-touch-startup-image-1536x2008.png" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/favicons-c2a605fbc0e687b2e1b4b90a7c445cdd/apple-touch-startup-image-320x460.png" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/favicons-c2a605fbc0e687b2e1b4b90a7c445cdd/apple-touch-startup-image-640x1096.png" to "$web"...

Successfully deleted storage account "elsatest0".
Uploading "c:/Users/AzureTest/Desktop/dist/favicons-c2a605fbc0e687b2e1b4b90a7c445cdd/apple-touch-startup-image-640x920.png" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/favicons-c2a605fbc0e687b2e1b4b90a7c445cdd/apple-touch-startup-image-748x1024.png" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/favicons-c2a605fbc0e687b2e1b4b90a7c445cdd/apple-touch-startup-image-750x1294.png" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/favicons-c2a605fbc0e687b2e1b4b90a7c445cdd/apple-touch-startup-image-768x1004.png" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/favicons-c2a605fbc0e687b2e1b4b90a7c445cdd/favicon-16x16.png" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/favicons-c2a605fbc0e687b2e1b4b90a7c445cdd/favicon-32x32.png" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/favicons-c2a605fbc0e687b2e1b4b90a7c445cdd/favicon.ico" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/favicons-c2a605fbc0e687b2e1b4b90a7c445cdd/firefox_app_128x128.png" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/favicons-c2a605fbc0e687b2e1b4b90a7c445cdd/firefox_app_512x512.png" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/favicons-c2a605fbc0e687b2e1b4b90a7c445cdd/firefox_app_60x60.png" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/favicons-c2a605fbc0e687b2e1b4b90a7c445cdd/manifest.json" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/favicons-c2a605fbc0e687b2e1b4b90a7c445cdd/manifest.webapp" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/index.html" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/static/css/app.d41d8cd98f00b204e9800998ecf8427e.css" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/static/js/0.0e0ae36daa22771f803e.js" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/static/js/0.0e0ae36daa22771f803e.js.map" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/static/js/1.87754b4f155e7b5857c2.js" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/static/js/1.87754b4f155e7b5857c2.js.map" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/static/js/10.43c20f52e64ba797642a.js" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/static/js/10.43c20f52e64ba797642a.js.map" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/static/js/11.2a796aa5d3d6bd2ce4f3.js" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/static/js/11.2a796aa5d3d6bd2ce4f3.js.map" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/static/js/2.99e4f0fc2910ea69673e.js" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/static/js/2.99e4f0fc2910ea69673e.js.map" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/static/js/3.4a14703849f24b2e2a3f.js" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/static/js/3.4a14703849f24b2e2a3f.js.map" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/static/js/4.645b2cc1a8da676edfd8.js" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/static/js/4.645b2cc1a8da676edfd8.js.map" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/static/js/5.6ffd9feaaa7c8adc6e60.js" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/static/js/5.6ffd9feaaa7c8adc6e60.js.map" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/static/js/6.9c990a87b3fdfa33f38f.js" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/static/js/6.9c990a87b3fdfa33f38f.js.map" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/static/js/7.b7c03b5a0ce8860eefd2.js" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/static/js/7.b7c03b5a0ce8860eefd2.js.map" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/static/js/8.f7086e0cd9f3e8ade960.js" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/static/js/8.f7086e0cd9f3e8ade960.js.map" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/static/js/9.9ad93289b6c795c76755.js" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/static/js/9.9ad93289b6c795c76755.js.map" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/static/js/app.22dbafb6873388a7830d.js" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/static/js/app.22dbafb6873388a7830d.js.map" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/static/js/manifest.3f71d0c31d0a273998be.js" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/static/js/manifest.3f71d0c31d0a273998be.js.map" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/static/js/vendor.6900163719948d69d2bd.js" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/static/js/vendor.6900163719948d69d2bd.js.map" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/static/logo.png" to "$web"...
Uploading "c:/Users/AzureTest/Desktop/dist/static/rwv-logo.png" to "$web"...
Uploaded to "$web".
Deployment to static website complete. Primary web endpoint is https://elsatest0.z22.web.core.windows.net/

This is most likely a race condition that we can't control. Thanks for submitting!

Got it. Thanks for your share.


🐛 Bug Report: Cost Insights alerts with an optional status are not displayed

📜 Description
Cost Insights alerts with an optional status field are not displayed in the UI. For example, the UnlabeledDataflowAlert documented in the alert README and provided in the example API client that are supposed to work out of the box are not shown.
I believe the concern is that the utils/alerts.tsx file has the code
export const isAlertActive = (alert: Alert) => !hasProperty(alert, 'status');
...
export function hasProperty(alert: Maybe<Alert>, prop: keyof Alert): boolean {
  return prop in (alert ?? {});
}

which causes the code to hide all alerts with a status  field. I believe the intent is that snoozed, accepted, or dismissed alerts are no longer shown in the active alerts list in the UI. But the implementation has the effect of hiding these alerts in their initial state.
I think the implementation should be more like:
export const isAlertActive = (alert: Alert) => !hasProperty(alert, 'status');
...
export function hasProperty(alert: Maybe<Alert>, prop: keyof Alert): boolean {
  return prop in (alert ?? {}) && alert[prop];
}

So that alerts with an "undefined" status are shown, while ones with a status that would hide them are not.
👍 Expected behavior
Alerts with a status field, but which have not been accepted, dismissed, or snoozed, are shown in the active alerts list.
👎 Actual Behavior with Screenshots
This is what is shown with one projectGrowthData alert and one UnlabeledDataflowAlert, in their initial states:

and later in the page:

What you see here is that the projectGrowthData alert is shown, since it has no status property. But the UnlabeledDataflowAlert is not. There is no trace of it anywhere.
If you mark the UnlabeledDataflowAlert status as accepted, you see the accepted checkmark with a 1, like this:

and clicking that icon takes you to a hidden action items view:

So the result is you can only cause alerts to be hidden, but cannot cause them to be active action items and shown.
👟 Reproduction steps
Use the example alert client.
📃 Provide the context for the Bug.
The utility code in question is not in an overridable class. As a result, I cannot use the UnlabeledDataflowAlert type alerts which are supposed to work out of the box, nor can I enable the the pattern that allows alerts to be accepted, dismissed, or snoozed within any alerts I create.
🖥 Your Environment
Not applicable. The example shows the problem.
👀 Have you spent some time to check if this bug has been raised before?

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

🏢 Have you read the Code of Conduct?

[X] I have read the Code of Conduct

Are you willing to submit PR?
No, I don't have time to work on this right now

Perhaps this also reveals a gap in unit testing, where creating an instance of an alert like the UnlabeledDataflowAlert with a status field, in its initial state would appear in the UI.

Thank you for opening this issue! 👍
We'll leave this one open to community contributions. If anyone wants to work on this, please chime in, any help is appreciated! 🙏


How to use UCMCTracker on custom video.

Hi,
I wanted your help in running the tracker on the custom video. I will use the frame of that video to calibrate using your tool. Can you please guide me on running your tracker on any video?

Thank you for reaching out and expressing interest in using our tracker with your custom video. Here's a step-by-step guide to help you get started:

Camera Parameter Estimation: First, you'll need to estimate the camera parameters from a frame extracted from your video. You can do this by running the script with the command:
python util/estimate_cam_para.py --img your_video_frame.jpg --cam_para your_cam_para.txt

This will use a frame (your_video_frame.jpg) extracted from your video to estimate the camera parameters, which will be saved in your_cam_para.txt. For detailed instructions on how to perform this step, please refer to the 'Camera Parameter Estimation Tool' section in our README.

Running the Tracker: Once you have the camera parameters estimated, you can run the tracker on your video by executing the following script:
python demo.py --cam_para your_cam_para.txt --video your_video.mp4

This command will start the tracker using the camera parameters you've estimated (your_cam_para.txt) and apply it to your video (your_video.mp4).

Please ensure that you have followed all the setup instructions mentioned in our README to avoid any potential issues. If you encounter any problems or have further questions, don't hesitate to ask.

@corfyi
Thanks a lot for your response. I had some questions regarding the camera parameter estimation tool.
When I run the command:
python util/estimate_cam_para.py --img your_video_frame.jpg --cam_para your_cam_para.txt
Does it give the camera parameters directly, or do I need to align the fx, fy, and fz, and focal length parameters?
If yes then for me it is not clear that what alignment looks right when I use the tool. For eg, how should a right focal length look like, can you give me an example?

I recommend referring to the discussion in issue #6. There, we have addressed similar concerns and provided comprehensive instructions that should be helpful in your case.

Hi @corfyi
I think it is not mentioned in #6. What I am asking that after I get the initial parameters, how can we judge or change the parameters using GUI such as focal length becuase when I increase the focal length the dots on the image go far away which assumes that we are zooming in.
So I am asking that after I run your code on my custom image, I get some parameters, but I have to further tune to get the exact params for fx, fy, fz and focal length. Can you please give me some idea that how to judgethat the tuned parameters are correct?

Our tool allows for the modification of camera extrinsic parameters, specifically the rotation angles, but does not account for translation. It provides a rough estimate of camera parameters, which, while not precise, has been shown to achieve good tracking results with UCMCTrack even with this level of approximation. It's important to note that achieving an exact estimation of camera parameters based on a single image is challenging. This is because a single image offers limited information, making it difficult to accurately assess the precision of the estimations.
Our approach primarily offers a way to get a rough starting point for these parameters. The visual feedback you mentioned, such as the effect of zooming when adjusting the focal length, can serve as a qualitative guide. However, due to the inherent limitations of estimating camera parameters from a single image, exact accuracy and evaluation of these parameters can be complex.


When a user disconnects from the room remove their canvas from the UI

Hey griffobeid,
I can work on this issue with your support please

Hey @sayyedkamran  !
Your help would be greatly appreciated here :)

Let me dig deep in the code base first


fix logging bug in "Titles"

This should fix it in Linux, not 100% sure in Windows... Lemme check first :)

Seems to work :)

ok :+1:


Why does Duplicated(x, dx) assume x and dx have the same type?

A typical example where this is painful is writing a JVP/VJP into a row/column of a Jacobian. Then dx or x can be reshaped or views.
cc @adrhill

We also assume congruency https://github.com/EnzymeAD/Enzyme.jl/issues/636 i.e. that the shadow is structurally identically to the primal value. This is not a requirement on the Julia types, but on the datalayout of the objects, but in reality requiring types to be equal is an  easier guardrail then determining full congurency https://github.com/EnzymeAD/Enzyme.jl/pull/637
My favorite example of this is a sparse array. What should the shadow of it be? It is not enough to require that the shadow is of the same type, but it must additionally be congruent/"structurally identically" so it needs to have the same non-zero values (even though those values may be zero)

So as a technical detail the reason why the equal type is done isn't because it is necessarily required internally, but because it is a conservative approximation that prevents a lot of user error.
Like @MasonProtter the way differentiation work is that for every variable at either register i (For any i) or byte offset i (for any byte offset, or pointer indirection), Enzyme will use the shadow variable at the same register/byte offset as storage for the corresponding derivative.
The precise memory locations accessed will depend on the function being differentiated. For example, if a primal only reads from an array at index 47, the derivative will only read/write to index 47 (and no other indices).
Since we can assume that all memory accesses on the primal are valid for the primal input, using an equivalent data structure for the shadow will always be valid (since at most we will access the same memory locations as the primal). Since a shadow object of the same type of the primal is guaranteed to have the same data layout as the primal data layout, requiring the primal data structure to be the same julia data type is a sufficient (but not necessary) constraint to this.
However, one can construct inputs with differing data layouts, but these come with safety issues that must be taken more seriously, as well as different semantic meanings.

function f(ptr)
	x = unsafe_load(ptr, 47)
	x * x
end

ptr = Base.reinterpret(Ptr{Float64}, Libc.malloc(100*sizeof(Float64)))
unsafe_store!(ptr, 3.14, 47)

@show f(ptr)

using Enzyme

dptr = Base.reinterpret(Ptr{Float64}, Libc.calloc(100*sizeof(Float64), 1))

autodiff(Reverse, f, Duplicated(ptr, dptr))

@show unsafe_load(dptr, 47)
# 6.28

dptr = Base.reinterpret(Ptr{Float64}, Libc.calloc(sizeof(Float64), 1))

# offset the pointer to have unsafe_load(dptr, 47) access the 0th byte of dptr
# since julia one indexes we subtract 46 * sizeof(Float64) here
autodiff(Reverse, f, Duplicated(ptr, dptr - 46 * sizeof(Float64)))

# represents the derivative of the 47'th elem of ptr,
@show unsafe_load(dptr, 1)

# 6.28

Relatedly, a long discussion of this would make excellent docs. @gdalle do you want to test your understanding (and our explanation) and open a docs PR on the subject (obviously we'll help you make sure it is complete/accurate, but also having a voice who isn't already knowledgeable about the weeds is useful to making sure it is accessible)

This is similarly why we presently enforce that views have the same offsets/indices in shadow and primal: https://github.com/EnzymeAD/Enzyme.jl/blob/5e4e2ef2ef9b8add6dd56e8afaf5a32039ac9f83/lib/EnzymeCore/src/EnzymeCore.jl#L66
We'll otherwise store derivative data into the same/corresponding byte offset of the shadow (as computed by the primal's offset/indices). If the offsets are different, a user may get derivatives at an unexpected offset. Of course someone who knows what they're doing and really wants that behavior may dislike that check, but in that case they should probably just set the check flag to false.

bump @gdalle would you be interested in summarizing this into docs?

yeah I'll give it a shot

Done


MMDB_LITTLE_ENDIAN is not working

Original text:
I think I am experiencing possibly similar issues using this library with the newest (just downloaded yesterday) dataset.
Using the database file: GeoLite2-City_20200324/GeoLite2-City.mmdb
I get no region or city info when requesting many IP's and many locations are just weird output (using the dump command)
   "location":
     {
       "accuracy_radius":
         1000 <uint16>
       "latitude":
         -10438338752435293719890396892364917466034237982391852769671753509138391401692727071305276655652957403267921171166357211007787457982082232415147751983543405421651415273570304.000000 <double>
       "longitude":
         -42029518960714173967511149898952791355703658664524365092525892829929582366361896852838699116510557539686137405216059736665188229254480322912253548547040717496190687696641935490208203941530143326417536153165834233481084259117354155501950172492806175871068540189034485383168.000000 <double>
       "time_zone":
         "America/Chicago" <utf8_string>
     }

Im not sure what is going on. Im using a very simple string lookup for an IP.
Shouldnt the location be nulled if its invalid? And also, why is there no city?
This is the output using an online tool:
Continent: North AmericaCountry: United StatesCountry Code: USCountry CF: 86Region: SouthwestState: CaliforniaState Code: CaState CF: 73DMA: 807MSA: 41860City: BurlingamePostal Code: 94010Timezone: GMT-08:00Area Code: 650City CF: 61Latitude: 37.56783Longitude: -122.36945

Do I need to use an older database?

update
Just ran it on the GeoLite2-City_20200303/GeoLite2-City.mmdb and the same results.

Originally posted by @dlannan-fmad in https://github.com/maxmind/libmaxminddb/issues/223#issuecomment-606598080

@dlannan-fmad, could you provide more information about your environment, e.g., distribution, specific release, etc? Also, could you provide your config.log from a clean build with no local changes or extra arguments to configure?
It looks like MMDB_LITTLE_ENDIAN just uses AC_C_BIGENDIAN. I am surprised it would be broken.

I am going to close this given that it is not actionable as is and that we are just relying on AC_C_BIGENDIAN for this information. I am happy to reopen it if more details are added or there are other reports of the issue.


Fix the “out of order samples” and “duplicate sample for timestamp” issues

Fix the “out of order samples” and “duplicate sample for timestamp” issues in the Prometheus RW exporter.
OTel Components:
https://github.com/open-telemetry/opentelemetry-collector/tree/main/exporter/prometheusremotewriteexporter
https://github.com/open-telemetry/opentelemetry-collector-contrib/tree/main/exporter/awsprometheusremotewriteexporter
Also see https://github.com/open-telemetry/opentelemetry-collector/issues/2315

I think this is due to the exporter sending samples in parallel without any sharding.  The Prometheus remote write code goes to quite some length to ensure samples for a specific series are delivered in order, but between series there is parallelism - see the queuemanager code: https://github.com/prometheus/prometheus/blob/6bc67805332dad9345f9d11069f321203bf89f8d/storage/remote/queue_manager.go#L883
The easiest way to do this would be to reuse all this code - this guarantees it'll also work as we improve it upstream.  In particular, we're in the process of redesigning and rewriting it so that we can guarantee metadata, exemplars and histograms are all delivered atomically.

We are producing samples in non-chronological order due to the bug explained at https://github.com/open-telemetry/opentelemetry-collector/issues/2315#issuecomment-818502114.


GeneratedAppGlideModuleImpl is defined multiple times

I am using Glade for the rest of the app as well and I defined my own Glide Module. It seems to be clashing with the one defined by the library. Not really how this can be fixed other than to avoid using the glide module in the library.
Type com.bumptech.glide.GeneratedAppGlideModuleImpl is defined multiple times: /Users/alexandrudochioiu/.gradle/caches/transforms-2/files-2.1/40f8833c9ed01401ecf4ce42de9ca693/jetified-GlideToVectorYou-v2.0.0-runtime.jar:com/bumptech/glide/GeneratedAppGlideModuleImpl.class, /Users/alexandrudochioiu/AndroidStudioProjects/NFT_Craze_Gallery/app/build/intermediates/javac/release/classes/com/bumptech/glide/GeneratedAppGlideModuleImpl.class

@AlexDochioiu did you found any solution for this?

@VivekMakwana24 I manually copied the files and imports from the library into my own project, and then in the Glide Module defined in the library I added extra code for what I needed for my own project.

as a library, the project should not contains class that implements AppGlideModule. which is conflicted with the host project that also contains the class that implements AppGlideModule.


[turborepo] prune error "/pnpm-workspace.yaml" not found

What version of Turborepo are you using?
1.10.10
What package manager are you using / does the bug impact?
pnpm
What operating system are you using?
Mac
Describe the Bug
turbo prune --scope=tono-app --docker fails with "/out/pnpm-workspace.yaml" not found.  This is running on github actions machines
Expected Behavior
pnpm-workspace.yaml file is in the right location
To Reproduce
FROM node:16-alpine AS provisioner
RUN apk add --no-cache libc6-compat
RUN apk update

# Intall turbo
RUN npm i -g turbo;

# Set working directory
WORKDIR /usr/src/app
COPY . .
RUN turbo prune --scope=tono-app --docker

# Add lockfile and package.json's of isolated subworkspace
FROM node:16-alpine AS builder
RUN apk add --no-cache libc6-compat
RUN apk update
WORKDIR /usr/src/app

# Install pnpm
RUN npm i -g pnpm;

# To skip scripts that should not run in CI environment
ENV GITHUB_ACTIONS=true

# First install the dependencies (as they change less often)
COPY .gitignore .gitignore
COPY .npmrc .npmrc
COPY --from=provisioner /usr/src/app/out/json/ .
COPY --from=provisioner /usr/src/app/out/pnpm-workspace.yaml ./pnpm-workspace.yaml

Reproduction Repo
No response

Had the same problem, applied a short term fix of locking the version to 1.10.9
# Intall turbo
RUN npm i -g<EMAIL_ADDRESS>

same problem here!
pnpm-worskpace.yaml is no longer available in out/ folder.
It works on windows, but it fails on docker container using node:18-alpine
(as workaround i'm pointing to /out/json/pnpm-workspace.yaml)

thank you @chris-olszewski!  either way works, appreciate the fast follow up


feat: added reading oidc_secret from a file capability

Referencing similar update to Benefice: "This is required for security, since we do not want to expose the secret on command line or in a config file"
#238

DCO appears to be failing due to difference in my github (personal) email and<EMAIL_ADDRESS>(what I signed off w/), not sure as to why Lint / rust is failing.

@dxfg please use the email associated with your account when signing-off and run cargo fmt from within the root of the repo

Error: commit_message:1:7: error: commit message's description starts with a non-imperative verb
feat: added reading oidc_secret from a file capability

@dxfg if you mark it "ready for review" I think this can be merged! :)


Memory pools for variant, physics pairing etc

Calls to malloc are replaced by memory pools using PagedAllocator, and FixedPoolAllocator.
The pools are all centrally located in common_pools.h.
Converted to use pools:

Variant (AABB, Basis, Transform2D, transform3D)
Array (ArrayPrivate data)
NodePath (Data)
StringName (Data)
Physics pairing

Allocators
PagedAllocator
PagedAllocator is modified to use Mutex rather than SpinLock (we established on rocketchat that we believe it is now a better option on modern compilers). There is also a compile option to fallback straight to malloc, for debugging / benchmarking purposes.
PagedAllocator adds a raw_alloc function to allow the calling code to run placement new. The alloc function does allow passing arguments but in many cases the necessary constructors didn't seem to be present for this method. Calling placement new at the calling site also ensures there are no intermediates.
There is one shortfall of the current PagedAllocator - it cannot compact, and thus is subject to two potential problems:

Overuse of memory due to historical allocations (as the pages are only released at exit)
Lack of locality due to historical allocations

FixedPoolAllocator
For this reason I've also written a simple fixed size memory pool (that has identical API to PagedAllocator) but which has a fixed size specified at compile time - beyond that size it will fallback to using malloc and free.
This potentially has some advantages over PagedAllocator for some of the pools:

It only has a small memory footprint, and will not overuse memory.
Locality is always guaranteed (with a small fixed size), above that, locality is down to malloc (as is the current situation).

FixedPoolAllocator can optionally be compiled out to go straight to malloc for debugging / benchmarking. It also will detect double deletes in DEV_ENABLED builds.
Memory Use
Both PagedAllocator and FixedPoolAllocator have the potential to require more memory than the old malloc only approach to dynamic allocations. The memory used can be monitored at development time by uncommenting the define GODOT_COMMON_POOLS_LOG_STATISTICS in common_pools.cpp.
Typical output:
	pool_transform3ds allocs : 8, mem : 48 Kb
	pool_transform2ds allocs : 7, mem : 24 Kb
	pool_aabbs allocs : 0, mem : 24 Kb
	pool_bases allocs : 4, mem : 36 Kb
	pool_array_private allocs : 93, mem : 224 Kb
	pool_nodepath_data allocs : 1511, mem : 224 Kb
	pool_stringname_data allocs : 21219, mem : 1344 Kb
	pool_area_pair allocs : 0, mem : 80 Kb
	pool_area2_pair allocs : 0, mem : 80 Kb
	pool_area_soft_body_pair allocs : 0, mem : 40 Kb
	pool_body_soft_body_pair allocs : 0, mem : 56 Kb
	pool_body_pair allocs : 64483, mem : 616 Kb
	pool_area_pair_2d allocs : 0, mem : 72 Kb
	pool_area2_pair_2d allocs : 0, mem : 72 Kb
	pool_body_pair_2d allocs : 0, mem : 272 Kb

StringNames use quite a bit of memory but there doesn't seem a lot we can do about this, they are mostly a fixed amount used for the bound functions and enums, and this is part of the design of Godot.
In practice, using PagedAllocator for some of the pairing (particularly pool_body_pair) was quite expensive in terms of memory use, easily using 37 megs in the first physics benchmark I tried, which notably will not reduce once that peak has been reached (because PagedAllocator does not compact), which could be a concern with large stacks of objects, especially on mobile. For this reason, for now at least, I've taken the more conservative approach of making the pairing use the fixed allocator.
@reduz has suggested maybe there is a way we could have a maximum number of pages that could be allocated, and above that revert to malloc (in the same way that FixedPoolAllocator does). I agree this would be ideal, but we would need a good cheap way of testing whether allocations are within the pool (and can thus be added to the freelist), or whether they have been allocated by malloc. With FixedPoolAllocator we can simply check for containment within the pool by checking the pointer address, but with multiple pages in PagedAllocator with multiple address ranges, this approach becomes relatively more expensive because of the need for several address range checks... although not out of the question if we limited to e.g. 4 pages. We could also do something like add some padding to allocations with this data, but that would increase the memory use.
These approaches can be implemented if these are preferred by reviewers (particularly if these limited PagedAllocators would be useful for their use in the Renderer too).
Performance
As noted in #58633, the pool allocators are a smidgen faster than malloc, but in practice when performance testing in real world situations (where the allocation is only a small part of the profile), I haven't found a huge difference between the different allocators on average. So really the primary reason for the interest in using pools imo is to prevent any OS housekeeping which could result in hiccups, which are very undesirable in games.
Notes

Continuation of the work in #58633 . There is some discussion there on the pros and cons of pooling versus just using malloc.
I've decided to lead on master for this as it should be easier to get feedback, then do the 3.x version.
At the moment PagedAllocator isn't capable of compaction. But if we roll out pooling to more data types, then it may be worth adding basic compaction support, or a similar template with compaction support. For compaction we can probably simply monitor when pages have zero allocations and remove them. This wouldn't be perfect but would be cheap and probably "good enough".
Originally I was going with pools localised in the calling code, but there are some advantages to keeping the pools for different objects together. It makes the code easier to understand / expand / maintain, keeps the boiler plate in the calling sites to a minimum, and also allows us to later place debugging monitors on the pools to measure memory use and fragmentation.
The choice of whether to use PagedAllocator or FixedPoolAllocator in each case is somewhat arbitrary and open to debate. It is very easy to change the allocator type in each case simply by changing the entry in common_pools.h.

PR meeting: Just move to using a couple of bucket sizes for Variant, and leave the rest for now. Physics pairing might end up being handled by a stack allocator later on.

Superseded by #61315.


Officially deprecate application templates in favor of "template": "generic"

Is your feature request related to a problem? Please describe.
Documentation does not accurately reflect the current expected use of application templates.
Describe the solution you'd like
Documentation should be updated to reflect the statement

"...and we have since decided that [application templates] are not worth developing further. At this point they are unofficially deprecated, and we recommend all users to use the generic template." From a thread in the f5-appsvcs-extension Slack channel

Example declarations should be converted from "template": "http" etc. to "template": "generic".
Documentation piece:

##Do all of my application services need to be named “ServiceMain”?##
No, if you want to name your service something other than serviceMain, use “template:”generic” in the application service of your declaration. You can still use the class property in the application service to specify Service_HTTP or Service_TCP for example, but for each application service in a tenant that uses one of the templates (http, https, tcp, udp, l4), you must use the name serviceMain for your application service. See Example 20 in the AS3 documentation for an illustrative declaration.

should be replaced with a statement of why the templates existed and why the generic template is now the recommended approach
Additional context
This was a major source of confusion for me when starting into AS3, and I commonly see other users with similar issues in the f5-appsvcs-extension Slack channel.

Thank you for your feedback. This is already being tracked in our internal product backlog as AUTOTOOL-978.

This has been resolved as part of the 3.20.0 release.


Fix issue #355

Description
Add link to documentation generated for types/common_test.go
Fixes #355
Type of change

Documentation update

Testing steps
N/A

Codecov Report

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

@@           Coverage Diff           @@
##           master     #375   +/-   ##
=======================================
  Coverage   70.39%   70.39%
=======================================
  Files          12       12
  Lines         652      652
=======================================
  Hits          459      459
  Misses        189      189
  Partials        4        4

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 7ba7f58...3f3e3ad. Read the comment docs.


Move examples to a separate git repository

Followup of https://github.com/apache/camel-quarkus/pull/1689#issuecomment-687582603

@oscerd I hope I recollect it right, that you can create new repos under the apache GH org? Could you please create camel-quarkus-examples ?

Sure I'll do it. There is 4 hours before we'll be able to write on it anyway

There is 4 hours before we'll be able to write on it anyway

It is not that urgent :). Thanks!

https://github.com/apache/camel-quarkus-examples
We can add an .asf.yml file with description and notice, license etc. I can do that.

It was faster than last time, it's already writable I guess


New feature: be able to provision separate section(s) based on label(s)

E.g.
custom_sections:
- name: Easy work needing help
  types: [pull, issue]
  labels: easy, contribution-desired

to create a section which would collate Pull requests and Issues which have both labels easy and contribution-desired.
It would then be useful to annotate/be able to find work which anyone in the team could pick up "when bored" or just to improve the greenness of their github profiles.
as for selection, I wonder if may be it could be generalized a little more exposing internal structure but making it also flexible
custom_sections:
- name: Easy work needing help
  condition: 'easy' in thing.labels and 'contribution-desired' in thing.labels"

where thing would  be an issue (from self.active_issues) or a PR (from self.open_prs).
WDYT @jwodder ?

@yarikoptic I don't like the idea of running arbitrary Python code read from a config file.

A defense case:  it is not "arbitrary" as cannot be provided by a possibly malicious "external" user. Here it is a part of the configuration file destined for execution by that user and if user can modify that file, he can as well modify the software directly or do that harm directly.  We similarly expose for eval in datalad foreach-dataset and so far had no issue with that.

ultimately also would like to check if assigned or not already, so smth like
('easy' in thing.labels and 'contribution-desired' in thing.labels") and not thing.assigned


🐛 biome incorrectly reports 'aria-atomic' as an invalid ARIA attribute

Environment information
CLI:
  Version:                      1.4.1
  Color support:                true

Platform:
  CPU Architecture:             x86_64
  OS:                           macos

Environment:
  BIOME_LOG_DIR:                unset
  NO_COLOR:                     unset
  TERM:                         "xterm-256color"
  JS_RUNTIME_VERSION:           "v18.18.2"
  JS_RUNTIME_NAME:              "node"
  NODE_PACKAGE_MANAGER:         unset

Biome Configuration:
  Status:                       Loaded successfully
  Formatter disabled:           false
  Linter disabled:              false
  Organize imports disabled:    false
  VCS disabled:                 true

Workspace:
  Open Documents:               0

What happened?

run biome lint <file-to-lint>
 contains a JSX tag with an aria-atomic="true"
biome reports an error: The element contains invalid ARIA attribute(s) and ℹ aria-atomic is not a valid ARIA attribute.

https://biomejs.dev/playground/?code=PABzAHAAYQBuAAoACQBpAGQAPQAiAGgAaQBuAHQALQBjAG8AdQBuAHQAcgB5ACIACgAJAHIAbwBsAGUAPQAiAGEAbABlAHIAdAAiAAoACQBhAHIAaQBhAC0AYQB0AG8AbQBpAGMAPQAiAHQAcgB1AGUAIgAKAAkAYwBsAGEAcwBzAE4AYQBtAGUAPQAiAGIAbABvAGMAawAgAGUAcgByAG8AcgAtAHQAZQB4AHQAIABwAHQALQAyACIACgA%2BAAoACQB7AGMAbwB1AG4AdAByAHkARQByAHIAbwByAH0ACgA8AC8AcwBwAGEAbgA%2BADsA
Expected result
biome should not report an error since aria-atomic is a valid ARIA attribute.
https://w3c.github.io/aria/#aria-atomic
Code of Conduct

[X] I agree to follow Biome's Code of Conduct

This should be relatively easy to fix. We have aria-atomic in our database, but we probably missed some metadata to track it.


added uncommon notes names to pitches object and array

Thanks for the wad.js demo tonight, I added the 'notes' E# Fb B# Cb to resolve open issue :)

I'm glad you liked the demo! Thanks for contributing.


Reduce upgraders at PRL6 to free up spawn space

This reduces the number of upgraders to three at PRL6. In theory this should increase the amount being dumped into the controller, it'll just spread it out over more ticks and give the spawn a chance to spawn other things as well.

Seems somewhat inconsistent use of count/quantity?

This Pull Request has been merged by GitConsensus.
Vote Totals

Yes
No
Abstain
Voters

3
0
0
3

Vote Breakdown

User
Yes
No
Abstain

tedivm
✔

dragoonreas
✔

TheRealMaxion
✔

Vote Results

Criteria
Result

Has Quorum
True

Has Votes
True


⚠ Bofrost.de has degraded performance

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

HTTP code: 200
Response time: 1368 ms

Resolved: Bofrost.de performance has improved in d5e73c7.


Array splice doesn't trigger re-render

There is no re-render trigger while updating an array stored in a signal using array splice. Here is an example of the issue:
const tasks = signal<any[]>(['Task1', 'Task2', 'Task3']);

const Screen = () => {
    function handleRemoveTask(idx: number){
    activeWindows.value.splice(idx,1)
    ))
  }
  return (
  <>...</>
  )
}

Signals can only rerender if you assign new value with .value property.
Splice is a mutating array in place. So you need to use: s.value = s.value.toSpliced(...)

Yup. working as intended.


Add support for Tuya _TZE200_7eue9vhc

Line 373 Added _TZE200_7eue9vhc in response to issue #1761

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 71.609%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
5269

Relevant Lines:
7358

💛  - Coveralls

Codecov Report
Base: 71.60% // Head: 71.60% // No change to project coverage :thumbsup:

Coverage data is based on head (9b02307) compared to base (a072ca3).
Patch has no changes to coverable lines.

Additional details and impacted files
@@           Coverage Diff           @@
##              dev    #1763   +/-   ##
=======================================
  Coverage   71.60%   71.60%
=======================================
  Files         239      239
  Lines        7358     7358
=======================================
  Hits         5269     5269
  Misses       2089     2089

Impacted Files
Coverage Δ

zhaquirks/tuya/ts0601_cover.py
100.00% <ø> (ø)

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.

Have you verified if the behavior in HA is correct?
Mainly that the behavior in the UI corresponds to the movement of the shutter both when you operate it from HA and from the physical switch.
And can you reference the issue in your first post like this:
Fixes: #1761

That way the issue will be closed once the PR is merged.

@javicalle Yep.  Works like a charm.  I have the zha_quirks folder in my instance that has this updated ts0601_cover file the way I uploaded it and it works brilliantly.


Top Camera Not Able to see the track in Gazebo

In Gazebo simulation , Top camera is unable to see track clearly .

Increase the Field of View of the camera through xml plugin properties .

Implemented and tested.


Evernote: Titles with quotation marks are imported as Untitled Note

If evernote-notes title surrounded by quotation marks in obsidian-note doesn't have title (Untitled Note).

Every Evernote notebook I've imported so far via ENEX file into Obsidian has some notes imported as Untitled. Usually it's only two or three, but today I imported a notebook with 692 notes, and 13 of them were imported as Untitled. These notes do not have quotation marks in the title. In this particular case, the note titles have a text code in square brackets "[" "]". The vast majority of these imported correctly into Obsidian but with the "[" "]" stripped out since Obsidian can't use those characters in the file name. Another small notebook of 10 notes imported with one note left as Untitled. That note had no punctuation or special characters in the title.

Hi @russp41 ,
Unfortunately I cannot reproduce the issue, importing notes with quotation marks and brackets works well. And if I check the code, "Untitled" is generated as note name in only one case: if there is no title found in the enex file.
Could you pls share me the enex file which contains a note that is converted to Untitled note?
Thanks for you help!


[BUG] Limit not push down when df.show

** Version **
TiSpark: 2.5/master
Spark: any version
TiDB: any version
Describe the bug
spark.sql("select * from tidb_catalog.db.table limit 1").explain          limit will pushdown
spark.sql("select * from tidb_catalog.db.table limit 1").collect          limit will pushdown
spark.sql("select * from tidb_catalog.db.table limit 1").show            limit will not pushdown
spark.sql("select * from tidb_catalog.db.table limit 1").foreach(xxx) limit will not pushdown
Most of the actions will lead to this problem. (except collect and explain)

/cherrypick release-2.4

/cherrypick release-2.5


Update Mastodon's colors to reflect rebranding

Yes, I'm the kind of person who would have pushed for updating Discord's blurple and icon and yes! I hate the past! (but seriously, the old mastodon blue looks ugly);
With the rebranding changing the colors, I've updated the Mastodon colors in order to reflect that:

Note: maybe mastodon-blue isn't an accurate name anymore? It was tempting to call it mastodon-blurple but yeah, that term is 100% a Discord thing

It is very close to blurple isn't it, lmao
That's fine, thanks!


Look into server monitoring services

Munin
Pingdom
https://elements.heroku.com/addons

Heroku has a pretty extensive range of reports and monitoring tools, let's start with those and determine if we need additional tools for server monitoring. Client monitoring is already covered with google analytics and sentry for crash reports.


Assembly version attribute tests fail

I see the following failures on master.
+++ Conformance\DeclarationElements\CustomAttributes\AttributeUsage (X_AssemblyVersion01.fs) +++
Microsoft (R) F# Compiler version (private)
Copyright (c) Microsoft Corporation. All Rights Reserved.
(0,0-0,0): warning FS2003: An System.Reflection.AssemblyFileVersionAttribute specified version '<IP_ADDRESS>.5', but this value is invalid and has been ignored
(0,0-0,0): warning FS2003: An System.Reflection.AssemblyInformationalVersionAttribute specified version '<IP_ADDRESS>.2', but this value is invalid and has been ignored

*** The following necessary lines were never matched:
***	warning FS2003:.+An AssemblyInformationalVersionAttribute specified version '6\.5\.4\.3\.2', but this value is invalid and has been ignored
***	warning FS2003:.+An AssemblyFileVersionAttribute specified version '9\.8\.7\.6\.5', but this value is invalid and has been ignored

I fixed assemblyfileversion and assemblyinformationalversion with a pr.
I'll check test failures, thx @latkin

I noticed some test failures due to a lingering FSharp.Core <IP_ADDRESS>55 in the GAC.  Since recently the build & test doesn't install a fresh FSharp.Core into the GAC anymore so an old one could cause spurious problems

Fixing in #937 and enabling more CI in appveyor - I'll close this - thanks for the report


LiqoDash dashboard for CrownLabs

Description
This PR adds the LiqoDash dashboard for CrownLabs and it includes:

Custom views for CrownLabs under the views folder
Dashboard configurations (custom resources) under the config folder

/rebase

/rebase

/merge


Issues catching up with blockchain and negative blocks behind

When starting the app this morning, I noticed some weird behavior while downloading block headers, with blocks behind briefly flashing to None.
Daemon output:
2017-11-07 09:04:37,687 INFO     lbrynet.core.Wallet:1261: Local Height: 268607, remote height: 268683, behind: 75
2017-11-07 09:04:51,350 INFO     lbrynet.core.Wallet:1261: Local Height: 268607, remote height: 268683, behind: 50
2017-11-07 09:05:37,606 INFO     lbrynet.core.Wallet:1261: Local Height: 268607, remote height: 0, behind: None
2017-11-07 09:05:37,739 INFO     lbrynet.core.Wallet:1261: Local Height: 268607, remote height: 268683, behind: 49

When behind was briefly None, the status call returned a negative block height:
{
  "id": 94,
  "jsonrpc": "2.0",
  "result": {
    "blockchain_status": {
      "best_blockhash": "ed75410d2bbb274b8e6c0267c2c13567b6ff64fba5aaa91a621e8122713b0f97",
      "blocks": 268607,
      "blocks_behind": -268607
    },
    "blocks_behind": -268607,
    "connection_status": {
      "code": "connected",
      "message": "No connection problems detected"
    },
    "installation_id": "5keR6W9oCaxVUeWDXuas1EL8jfc1MH7hMB8EAUx5tVpNKJb9xKe868vmMAJb3u9yeg",
    "is_first_run": false,
    "is_running": false,
    "lbry_id": "6a7Pv3y9g4NDv87FoptGwVJ81rDwdkrt7qbkx3ktU9yKWyeNB2LnZKnCFtaURKf16",
    "startup_status": {
      "code": "loading_wallet",
      "message": "Catching up with the blockchain"
    }
  }
}

This is actually normal behavior but somewhat confusing output so should be documented (maybe blocks_behind should be set to None in this case). It happens because below reason:
local height is whatever it was when you last started
sever height is zero because lbryum has not yet recieved this information yet
blocks behind is negative local height because it is calculated as server height - local height

@kaykurokawa I would argue if it hasn't received server height yet then server height isn't zero, it's null/undefined. And null/undefined minus zero should also be null/undefined (if not an error outright).

@eukreign will your lbryum work or victor's lbryumx work fix this? should I make a new label for "will be fixed by txlbryum/lbryumx changes" so we can check all these issues after your code is merged?

@eukreign and @shyba Can you confirm this is no longer and issue?

I have not experienced this issue in the new wallet. It defaults to downloading 2000 headers at a time, so most of the time when you sync it'll do so in a single request/response and the message is pretty clear of how many was downloaded and the new height.


Feature/show app version

We should move the info on the user menu to an about screen when we get one
Updated the version name to go along with the code
@RocketChat/android
Closes #155

My 1 comment is collapsed unexpectedly...
https://github.com/RocketChat/Rocket.Chat.Android/pull/157#discussion_r96414779
Could you please check it if not already?

I did the changes and it looked really bad. Too much spacing everywhere.
I was only aiming for a quick dirty temporary fix.. xD
This looks better.

Oh, really?
The new fixed one looks good 😆


Want to know target users selected for socialShare via SMS

Plugin works great for sharing via SMS.  I'm using IOS, the SMS app pops up and i can from there use the + button to go through my contacts and choose the person i want to send this message to.   BUT what I want is to have in the response for the promise on success to have it tell me the selection the user made.. I.e. what contact or even just the phone number did he choose.   that way i cna have it so next time the user goes to share something they can have this user pre-populated.   ritght now the only thing returned is the string 'success'.

Need example code that reproduces your issue.

Not an bug or issue more like missing functionality.   Let me take a look and see if the plugin itself supports it or not.  If it does then I can work on a pull request.   seems to me like something one would want to know right?  if i do a share and user picks someone, why not return the selected contact?   anyway not a bug just missing functionality.


Webapi v2 result attachments

implemented attachment uploads via v2 web api

@agramian Can you please make one minor change. In app/models/upload.rb, you've set the system to use the spec folder when not production. CAn you make that change to only occur when using the test env.

@joffems I opened a new pull request #83 with the change.


feat(forkJoin): accept promise, resultselector as parameter of forkJoin

closes #507
forkJoin now accepts promises as well as result selector, and expanded test coverage.

Updated PR. Appreciate take time to review with suggestions, @blesh

Looks really good. I found the most minor thing in the world (a let instead of a const). You don't have to fix it if you don't want to, we can just merge the changes. Just thought I'd point it out.

You don't have to fix it if you don't want to

I've update it, though I usually try to be strict on code in this case I obviously missed it. Thanks for pointing it out.

I've update it, though I usually try to be strict on code in this case I obviously missed it. Thanks for pointing it out.

No problem, what I try to do is const everything and then let the compiler or IDE complain at me when I need a let

Merged with 190f349 ... thanks! Good work!