Fields with default value as optional

Is there a way for fields in a case class with default value to be set as optional?
case class Foo(a: String, b: Boolean, c: Boolean = false)

would become
export interface IFoo {
  a: string
  b: boolean
  c?: boolean
}

You can override the default, see the README:
object Foo {
  import com.scalatsi.dsl.*
  implicit val tsFoo: TSType[Foo] = TSType.fromCaseClass[Foo] - "c" + ("c" -> TSBoolean | TSUndefined)
}


Grid of previously saved items does not affect position

Hey,
I cannot set position of previously saved items like described in issue #13
The size of the items are okay but not the position
Is it linked to the _styles attribute from the grid that is not been regenerated as at the time of saving.
I can give you my source files if you need to reproduce the issue ; or discuss about that
Regards,

Hello! In my project we have a functionality to pin a specific grid stack item , pinning means restricting from resizing and dragging and also locking its position, so that no other item can shuffle it while it's being dragged. This has to be done at run time. I have taken reference from https://github.com/tropicalista/angular-gridstack. We have an angular app. Any help would be greatly appreciated.

Did you look at the locked option?  Believe that prevents other drags from moving the item around.

Thanks for your response! Yes i tried manipulating the 'data-gs-locked' , 'data-gs-no-resize' and 'data-gs-no-move' options run time. By doing so i am able to lock/unlock a specific item.
I faced another issue after that, we have a functionality of adding and removing widgets run time.I tried using -  $('.grid-stack').data('gridstack').remove_widget(el,true);, but after doing so other widgets gets misaligned and they don't come back to normal mode again. Kindly help me adding and removing widget run time.


"invalid grant" during transport Exchange call

According to the authorization documentation:

invalid_grant: the provided authorization code is not valid, has been revoked or has expired (after 5 minutes). Note that both successful and unsuccessful requests revoke the code. Also check that the redirect_uri parameter is included if necessary.

I was able to get my 8 digit authorization code now that I have a Request URI defined, when I enter it into my app. I get the invalid grant error during the token, err := t.Exchange(code).
I added debug line in the transport's Exchange func to dump the query string, which looked good to me (see below)
map[grant_type:[authorization_code] code:[21416819] client_id:[*****] client_secret:[******]]
I'm wondering what else I might have missed? I'm always using a new authorization code because I know this code is revoked after successful or failed call.
Here's my reference code: https://github.com/booyaa/dthulhu/blob/master/plugins/moves.go
As you can see it's almost identical to your own reference code.

I think I understand what is happening. You don't actually need a new authorization code every time. The example I provided is actually a poor example of real world usage. It is just there to show the full flow.
When you run through the full flow, you will notice it creates a token_cache file by default. This package allows you to switch the cache backend to some other persistent store later. Anyway, at this point you've exchanged that 8 digit authorization code for an OAuth access token. That is what you need to perform subsequent valid API requests.
Going back to your example. If you start fresh by revoking the Moves app and deleting the token_cache file and just run through the flow once again. Now you have a fresh token_cache file.
Now let's say you want to perform another API call. You can skip the OAuth dance entirely. You can comment out everything between t := &moves.Transport{...} and api := t.Client() and continue to perform requests because your access token gets picked up from the TokenCache.
I created a gist of your code to demonstrate:
https://gist.github.com/pnelson/5714d8c946a153baf1bc
Additionally, your access token will expire after a few hours. This package should detect when your access token is expired and use the refresh token (also stored in your token cache) to seamlessly create an updated access token.

Thanks for getting back to me, I think I'm not even getting far as getting a token. If I was successful there would be a file called token_cache?
Can I confirm the authorisation flow? I'm fairly new to oauth, and my other APIs have been able to provide a personal access token without the oauth handshake:
Setup

Create an app on dev.moves-app.com
Setup a redirect url (does this need to point back to my app?)
Copy client id and secret

Run my app

my app provides an authorisation url
copy the pin and paste into the console running my app
get token as part of the transport Exchange func call (your library will cache it)
do something with the api i.e. get storyline
my app exits

If these steps are correct then I fail at step 3 of Run my app. The Exchange fails with invalid_grant error.

Yeah, the token_cache file is generated in Exchange so if you are failing there then that explains why the file doesn't get generated.
Setup instructions sound good. Yes, the Redirect URI should point to your app if you want to complete the authorization flow with minimal human interaction. See steps 3 and 4 below. Your HTTP handler for Redirect URI can take care if that instead of manually copy/pasting as in the example.
I just ran through the authorization flow myself and documented the steps I encountered.

Provide an authorization/login URL. (ex. https://api.moves-app.com/oauth/v1/authorize?client_id=mfWQ32X0_7pB2b6P7Ue1ZWio0Swz4J4O&response_type=code&scope=activity+location&state=foo)
Enter 8 digit PIN from authorization URL to mobile app and 'Allow' access.
Authorization page redirects to the Redirect URI (a handler within your app) with a code query parameter. (ex. http://localhost:3000/?code=TBO1XR33KppVRKAggU7p2SNoDBY4OlWdG0OX3Z1T9AZH7v879r9Xck2074f7z0ru&state=foo)
Exchange the code (bolded in previous step) for an access token.
Do something with the API. (ex. get storyline)

Once you get past step 4, you will have your token (and the token_cache file) and should be able to continue making API requests without needing to go through steps 1-4 again until your token expires.

:dancers: Yes! We have a token!
So a combination of my using a webserver that I wrote for another project that didn't echo back the whole incoming URL (from the Moves Redirect URI including the important code field) and not understanding that the code I was meant to enter was not the pin caused all these problems.
Thanks again for your help on this and the last issue!


Added Kint — a powerful debugging tool

Added Kint, a debugging and profiling tool that replaces var_dump(), print_r() and debug_backtrace(). Kint is shipped by default with Drupal 8's development suite.

+1
On Fri, Aug 7, 2015, 6:29 PM Nikhilesh Jasuja<EMAIL_ADDRESS>wrote:

Added Kint https://github.com/raveren/kint, a debugging and profiling
tool that replaces var_dump(), print_r() and debug_backtrace(). Kint is
shipped by default with Drupal 8's development suite.
You can view, comment on, or merge this pull request online at:
https://github.com/ziadoz/awesome-php/pull/449
Commit Summary

Added Kint — https://github.com/raveren/kint — which is a debugging
and profiling tool that replaces var_dump(), print_r() and
debug_backtrace(). Kint is shipped by default with Drupal 8's development
suite.

File Changes

M README.md
https://github.com/ziadoz/awesome-php/pull/449/files#diff-0 (1)

Patch Links:

https://github.com/ziadoz/awesome-php/pull/449.patch
https://github.com/ziadoz/awesome-php/pull/449.diff

—
Reply to this email directly or view it on GitHub
https://github.com/ziadoz/awesome-php/pull/449.

Thanks, I've merged this.


Fixed "Inline whispers should not highlight every tab"

Fix #691

This is not how the issue should be fixed, the Message is constant for a reason.
If we want channel-specific message flags, there should probably be another argument to addMessage, with additional message flags that are &'ed together by the channel view


Training in C++?

Hey, you have showed such an amazing work to train NNs in C++.
I would like to know what are the reasons for which you started training models in C++ instead of python? Because once the model definition has been written in pytorch in python and data pipeline has been setup, all the computation needs to be done will be done on GPU. So there wont be much drastic performance gains when migrating from python to c++. Please tell me some of your thoughts on this.

I was interested in implementing the NN programs in C++, and I want to improve my coding ability in C++, so I decided to write this code.
However, I have investigated how mush the speed is different between Python and C++.
I found a strange result that there are cases in which it runs faster in Python than in C++.
Here, the batch size, image size, and almost all components are matched between Python and C++.
And, NN model used for training and test in C++:
https://github.com/koba-jon/pytorch_cpp/tree/master/Dimensionality_Reduction/AE2d
My article for details (Japanese only):
https://qiita.com/koba-jon/items/274e5e4970da72216f73

CPU (Core i7-8700) only
with GPU (GeForce GTX 1070)

Python
C++
Python
C++

nondeterministic(cudnn)
deterministic(cudnn)

Training
times[time/epoch]
1h04m49s
1h03m00s
5m53s
7m42s
17m36s

GPU memory[MiB]
2
9
933
913
2941

Testing
speed[seconds/data]
0.01189
0.01477
0.00102
0.00101
0.00101

Training in C++ is slow when the GPU is used.
It has been identified that the causes of the delay are the "forward" and "backward" part, so it's not the part I wrote.
This speed is faster than when it is CPU only, so it seems that CUDA is being used.
But, I guess the coding of PyTorch for using the GPU may be different between Python and C++.
We plan to investigate this matter around March.

I was interested in implementing the NN programs in C++, and I want to improve my coding ability in C++, so I decided to write this code.
However, I have investigated how mush the speed is different between Python and C++.
I found a strange result that there are cases in which it runs faster in Python than in C++.
Here, the batch size, image size, and almost all components are matched between Python and C++.
And, NN model used for training and test in C++:
https://github.com/koba-jon/pytorch_cpp/tree/master/Dimensionality_Reduction/AE2d
My article for details (Japanese only):
https://qiita.com/koba-jon/items/274e5e4970da72216f73

CPU (Core i7-8700) only
with GPU (GeForce GTX 1070)

Python
C++
Python
C++

nondeterministic(cudnn)
deterministic(cudnn)

Training
times[time/epoch]
1h04m49s
1h03m00s
5m53s
7m42s
17m36s

GPU memory[MiB]
2
9
933
913
2941

Testing
speed[seconds/data]
0.01189
0.01477
0.00102
0.00101
0.00101

Training in C++ is slow when the GPU is used.
It has been identified that the causes of the delay are the "forward" and "backward" part, so it's not the part I wrote.
This speed is faster than when it is CPU only, so it seems that CUDA is being used.
But, I guess the coding of PyTorch for using the GPU may be different between Python and C++.
We plan to investigate this matter around March.

Huge thanks to you for these interesting insights. I suspect the reason for high training time on C++ could be under optimized data pipeline or under-optimized-and-serialized CPU-to-GPU and GPU-to-CPU data copy instead of parallel async copy. But, still further investigation might help. I was also curious about this as many people used to train models on C++ and I wonder what on earth forced them to do this. :-P

Huge thanks to you for these interesting insights. I suspect the reason for high training time on C++ could be under optimized data pipeline or under-optimized-and-serialized CPU-to-GPU and GPU-to-CPU data copy instead of parallel async copy. But, still further investigation might help. I was also curious about this as many people used to train models on C++ and I wonder what on earth forced them to do this. :-P

This is a follow-up report.
I benchmarked again using the following three kinds of Neural Networks in PyTorch v1.8.0.
I measured the training time based on iteration per second.

Only Fully Connected Layers
Model: AE1d

CPU（Core i7-8700）
GPU（GeForce GTX 1070）

cudnn: deterministic
cudnn: non-deterministic

Python[iteration/s]
86.83
97.69
97.69

C++[iteration/s]
312.6
312.6
312.6

Speed Up (Python -> C++)
×3.6
×3.2
×3.2

Only Convolutional Layers
Model: Discriminator

CPU（Core i7-8700）
GPU（GeForce GTX 1070）

cudnn: deterministic
cudnn: non-deterministic

Python[iteration/s]
5.24
27.59
39.08

C++[iteration/s]
4.51
26.8
36.08

Speed Up (Python -> C++)
×0.86
×0.97
×0.92

Convolutional and Transposed Convolutional Layers
Model: AE2d

CPU（Core i7-8700）
GPU（GeForce GTX 1070）

cudnn: deterministic
cudnn: non-deterministic

Python[iteration/s]
1.14
9.56
14.39

C++[iteration/s]
1.05
9.16
13.44

Speed Up (Python -> C++)
×0.92
×0.96
×0.93

As above, compared to before, the speed of "AE2d" in C++ is much faster and improved.
However, it still couldn't beat the execution speed of Python.
Looking at the details, it seems that the convolutional layer and the transposed convolutional layer are bad.
However, in the case of only Fully Connected Layers, execution speed in C++ is much faster than Python.
This alone may be worth training in C++.
I look forward to future improvements in the PyTorch C++ API for models of "2" and "3".

Thanks a lot for such a detailed experiments. One more thing that I would like to share to you that I have recently discovered, when transferring the training data from RAM to GPU memory, people generally use the concept of Pinned memory and that is a designated area of RAM from which memory copy into GPU memory is faster. I have seen this while working with TensorRT related operations in C++ where they allocate an input tensor memory on pinned memory area and once the data is there on this pinned memory they will call memcpy command to copy data from this pinned memory area to GPU for further computation. This may again give you some boost in C++ timings.
PS : Please create a paper / medium article of your findings along side this qiita.com blog. Because world needs to know about your findings. Keep it up.

Thank you for sharing such information.
I follow the page below, and I will try to improve class "dataloader".
https://pytorch.org/docs/stable/data.html#memory-pinning
Please look forward to follow-up report.


⚠ Bofrost.fr has degraded performance

In 774613f, Bofrost.fr (https://www.bofrost.fr) experienced degraded performance:

HTTP code: 200
Response time: 1168 ms

Resolved: Bofrost.fr performance has improved in fe4ed74 after 17 minutes.


LocalCompare 'updates the reference image...' test fails

I see the following error when running the unit tests:
1) LocalCompare afterScreenshot updates the reference image when changes are in tolerance:
     AssertionError: File should be modified: expected<PHONE_NUMBER>000 to be above<PHONE_NUMBER>000

Comparing the stat calls the files appear identical:
first run - create reference file
statsFirst { dev: 16777223,
  mode: 33188,
  nlink: 1,
  uid: 501,
  gid: 20,
  rdev: 0,
  blksize: 4096,
  ino: 30557209,
  size: 293,
  blocks: 8,
  atime: Fri Jun 17 2016 14:20:55 GMT+0100 (BST),
  mtime: Fri Jun 17 2016 14:20:55 GMT+0100 (BST),
  ctime: Fri Jun 17 2016 14:20:55 GMT+0100 (BST),
  birthtime: Fri Jun 17 2016 14:20:55 GMT+0100 (BST) }
Image is within tolerance or the same. Updating base image
statsSecond { dev: 16777223,
  mode: 33188,
  nlink: 1,
  uid: 501,
  gid: 20,
  rdev: 0,
  blksize: 4096,
  ino: 30557209,
  size: 293,
  blocks: 8,
  atime: Fri Jun 17 2016 14:20:55 GMT+0100 (BST),
  mtime: Fri Jun 17 2016 14:20:55 GMT+0100 (BST),
  ctime: Fri Jun 17 2016 14:20:55 GMT+0100 (BST),
  birthtime: Fri Jun 17 2016 14:20:55 GMT+0100 (BST) }

Could this be a bug in fs.outputFile from fs-extra? My guess is the file is not touched if it's identical:
log(`Image is within tolerance or the same. Updating base image`);
await fs.outputFile(referencePath, base64Screenshot, 'base64');

Issue here: https://github.com/jprichardson/node-fs-extra/issues/253

Works for me on windows & linux. Travis works also.
Which OS are you using? Maybe it's also an issue with the file system.


Add Docker resources

GitGuardian hardcoded secrets should be ignored since I'm using a local Docker Compose environment


[version] Update to 3.2.3

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint. The docs are available until 30 days after the last update.


zipline_poloniex.api.TradesExceeded: Number of trades exceeded

Hey,
when trying to do zipline ingest -b poloniex
with the following configuration
start_session = pd.Timestamp('2017-07-20', tz='utc')
end_session = pd.Timestamp('2017-10-23', tz='utc')
assets = [
    Pairs.usdt_btc,
    Pairs.usdt_eth,
    Pairs.usdt_dash,
    Pairs.usdt_xmr,
    Pairs.usdt_zec,
    Pairs.usdt_ltc,
]

register(
    'poloniex',
    create_bundle(
        assets,
        start_session,
        end_session,
    ),
    calendar_name='POLONIEX',
    minutes_per_day=24*60,
    start_session=start_session,
    end_session=end_session
)

I get zipline_poloniex.api.TradesExceeded: Number of trades exceeded. The only rate limiting information I can find is the 6 requests per second thing.
For a smaller period its working, so Is there any way to get this to work for a greater one?

Hi 21stio,
This error is due to the USDT_BTC pair having more than 50000 trades in a day for certain days. This comes from line 79 in api.py, and is due to the history access limit in the poloniex API. You can fix this error by changing the prepare_data def in bundle.api:
Original code:
def prepare_data(start, end, sid_map, cache):
        def get_key(sid, day):
            return "{}_{}".format(sid, day.strftime("%Y-%m-%d"))`

    for sid, asset_pair in sid_map.items():
        for start_day in pd.date_range(start, end, freq='D', closed='left', tz='utc'):
            key = get_key(sid, start_day)
            if key not in cache:
                end_day = start_day + timedelta(days=1, seconds=-1)
                trades = fetch_trades(asset_pair, start_day, end_day)
                cache[key] = make_candle_stick(trades)
            yield sid, cache[key]

My modified code:
def prepare_data(start, end, sid_map, cache):
    def get_key(sid, day):
        return \"{}_{}\".format(sid, day.strftime(\"%Y-%m-%d\"))

    for sid, asset_pair in sid_map.items():
        for start_day in pd.date_range(start, end, freq='D', closed='left', tz='utc'):
            key = get_key(sid, start_day)
            if key not in cache:
                end1 = start_day + timedelta(hours=8, seconds=-1)
                start2 = start_day + timedelta(hours=8)
                end2 = start_day + timedelta(hours=16, seconds=-1)
                start3 = start_day + timedelta(hours=16)
                end_day = start_day + timedelta(days=1, seconds=-1)
                print("Fetching data for {} from {} to {}".format(asset_pair, start_day, end_day))
                trades = fetch_trades(asset_pair, start_day, end1)
                trades = trades.concat(trades, fetch_trades(asset_pair, start2, end2))
                trades = trades.concat(trades, fetch_trades(asset_pair, start3, end_day))
                cache[key] = make_candle_stick(trades)
            yield sid, cache[key]

This splits each days trade request into three, which fixes the TradesExceeded error. Splitting into two had a few errors on the USDT_BTC pair. It's not beautiful and could likely be done better, but it works.

Thanks @immac636 for finding to root of this problem. Your workaround seems to solve it but what happens if there are more than 50000 trades in 8 hours? Do yo want to work on a solution where only the logic of fetch_trades is altered in a way that if the TradesExceeded error occurs the current daily interval is split automatically similar to the bisection method?

I arbitrarily selected 8 when I was trying to get this working back in August - I'll see if I can implement that. Thanks for the idea.

ah awesome, thanks man, looks good! :)
What is the trade data actually needed for? Is it each and every single trade? Is it bid and ask? And why isnt get_chart_data called anywhere, isnt that the OHLC data?

The trade data is each individual trade - it is pulled from https://poloniex.com/public?command=returnTradeHistory&currencyPair={PAIR}&start={START IN UNIX TIMESTAMP}&end={END IN UNIX TIMESTAMP}. You can see an example on the Poloniex API Documentation.
The get_chart_data method doesn't work for minute based data, which is what we need for zipline. It is limited to these periods (minutes): 5, 15, 30, 120, 240, 480.
OHLC data is instead obtained through the make_candle_stick method, by resampling tick data (individual trades) into minute data and calculating the max, min, first, and last values. This data is then passed into a dataframe along with the resampled volume and sent along to zipline for ingestion.

@21stio See my fork of this repo for the final version of this fix

Thanks to @immac636, this issue is closed now!


Google Colab

Not working in google colab, please update it

Had fixed it, please try again. link


[WIP] Use PhpDocParser with format preserving printer

Closes #686

Ready to merge in current state.
Next work will follow in next PR, to take the migration slowly. There is already lot of changes.


Update deploy_snapshot.yml

Description
develop should deploy Docker images too for nightly deploy
For review, you'll want to look at the second last github action build
https://github.com/dockstore/dockstore/runs/6086294854?check_suite_focus=true
to see if things seem to be headed to the right locations on quay.io and S3
Issue
https://ucsc-cgl.atlassian.net/browse/SEAB-4254
Please make sure that you've checked the following before submitting your pull request. Thanks!

[x] Check that you pass the basic style checks and unit tests by running mvn clean install
[x] Follow the existing JPA patterns for queries, using named parameters, to avoid SQL injection
[x] Check the Snyk dashboard to ensure you are not introducing new high/critical vulnerabilities
[x] Assume that inputs to the API can be malicious, and sanitize and/or check for Denial of Service type values, e.g., massive sizes
[x] Do not serve user-uploaded binary images through the Dockstore API
[x] Ensure that endpoints that only allow privileged access enforce that with the @RolesAllowed annotation
[x] Do not create cookies, although this may change in the future

Will followup for ticket to share code in actions
https://github.com/actions/runner/issues/646

https://ucsc-cgl.atlassian.net/browse/SEAB-4258


Services section html code and css code

fixes #3 included 3 services we can offer that we agreed.  also accept the suggestion of @micaela-21  to use the link button to expand info about the service

encouraging paragraph each services is good to persuade our visitors


Add go.mod in the project root and fix packages to require

Fixes #5

@ymotongpoo add doc.go (just with copyright and package operations) in the root dir for build to succeed.

@rghetia Thank you for the commnet. Added some files and fixed some part to pass the test.

Please merge this before #10


feat(integrations): add async support for ai_track decorator #3373

This commit adds capabilities to support async functions for the ai_track decorator
Closes #3373

General Notes
Thank you for contributing to sentry-python!
Please add tests to validate your changes, and lint your code using tox -e linters.
Running the test suite on your PR might require maintainer approval. Some tests (AWS Lambda) additionally require a maintainer to add a special label to run and will fail if the label is not present.
For maintainers
Sensitive test suites require maintainer review to ensure that tests do not compromise our secrets. This review must be repeated after any code revisions.
Before running sensitive test suites, please carefully check the PR. Then, apply the Trigger: tests using secrets label. The label will be removed after any code changes to enforce our policy requiring maintainers to review all code revisions before running sensitive tests.

@sentrivana totally get you on this one, initially i thought about trying to move stuff out but figured that would probably just compromise on readability.


Fetch minimum JDK version from Jenkinsfile

Fetches the minimum JDK version from Jenkinsfile.
For eg:
Login-theme-plugin Jenkinsfile
buildPlugin(
  useContainerAgent: true, // Set to `false` if you need to use Docker for containerized tests
  configurations: [
    [platform: 'linux', jdk: 21],
    [platform: 'windows', jdk: 17],
])

Fetches the min jdk (platform windows) which is 17

Now this JDK version can be used directly to compile and verify plugins if the Jenkinsfile is present.
Testing done
Interactive testing + Unit tests

Submitter checklist

[X] Make sure you are opening from a topic/feature/bugfix branch (right side) and not your main branch!
[X] Ensure that the pull request title represents the desired changelog entry
[X] Please describe what you did
[ ] Link to relevant issues in GitHub or Jira
[ ] Link to relevant pull requests, esp. upstream and downstream changes
[ ] Ensure you have provided tests - that demonstrates feature works or fixes the issue

Hey @jonesbusy, Just now seen your reviews. Let me change accordingly. Thanks!

Missing some test with empty buildPlugin() or more outdated/exotic configuration.
For example how the visitors are reacting to https://github.com/jenkinsci/forensics-api-plugin/blob/main/Jenkinsfile

Working on to update the logic, will raise new pr to cover this kind of file too.

Thanks a lot! Merging, very happy to start testing this :)


{Storage} upgrade package version

Description

Testing Guide

History Notes

[Component Name 1] BREAKING CHANGE: az command a: Make some customer-facing breaking change.
[Component Name 2] az command b: Add some customer-facing feature.

This checklist is used to make sure that common guidelines for a pull request are followed.

[ ] The PR title and description has followed the guideline in Submitting Pull Requests.

[ ] I adhere to the Command Guidelines.

/azp run


Add sinking_point

Thanks in advance!

Thanks for submitting yourself. Don't worry if you get a notification about a failed Action - the CI/CD is a bit temperamental with external PRs, and I haven't fully fixed it yet. Your submission will still appear on the directory a few minutes after the merge is done.


Drop support for IE 11, Chrome 49, Firefox 52, Safari < 11, Android 4.4 and Samsung Internet 4

IE 11

Initial release: 2013
Still supported, but Microsoft recommends using Microsoft Edge as the default browser
Global usage: 1.38%

All browsers below have reached their end-of-life and are no longer supported.

Chrome 49

Last release: 2016
The last version supported on Windows XP, Windows Vista, Mac OS X 10.6, 10.7, and 10.8.
Global usage: 0.33%

Firefox 52

Last release: 2018
Was an Extended Support Release (ESR)
Global usage: 0.11%

Safari < 11

Last release: 2017
Global usage: ~0.5%

Android 4.4

Last release: 2014
Global usage: 0.14%

Samsung Internet 4

Last release: 2016
Global usage: 0.28%

If you have any concerns, please feel free to leave a comment.

Blocked on #2304.

I worry about dropping IE support altogether. 1% is a lot of users. https://www.microsoft.com/en-us/download/internet-explorer.aspx claims that "Internet Explorer 11 is the recommended browser for Windows 7" and I imagine there are still a lot of people on Windows 7.

@edemaine The support for Windows 7 has ended on January 14, 2020. But I agree that still a significant number of people are using Windows 7 and/or IE 11. However, I think most people who use IE probably have other browsers installed and it has become too much technical debt to support IE. IMHO, v0.12.0 is stable enough to be the last version to support IE 11, and maybe we can backport important changes, if any.

When we dropped support for IE 9, there was an obvious payoff. We could then use CSS flexbox. I'm not quite as clear what benefit we receive from dropping IE 11. What do we gain?

ES6 transpilation, such as let, const, arrow functions, and classes won't be needed anymore, so performance might increase. (I'm not sure, though.) Maybe we can release both versions, transpiled and non-transpiled, or add documentation on transpiling for IE 11, until we break something for sure.

I think the fundamental problem is that someone hosting a website doesn't know what browsers users will use to visit. Meteor has a way of including one codeset or another depending on how old the browser is; I guess that would be the ideal solution? For our purposes, we could use offer the transpiled + non-transpiled versions -- is the latter different from the .mjs version?

If transpilation is the major (or only) difference, I would prefer to keep IE for the time being. We already make life sufficiently complex for web site administrators. We don't need to add more complexity for such small stakes.
When IE drops to a sufficiently small share, we can drop it altogether and make a clean break.

@edemaine I totally forgot about ES modules (.mjs).
@ronkok I entirely agree.


Cut lattices on solars can permanently break their grid to the station, thus breaking solars for the round

Description
If you cut the lattice that is connecting the solars to the main station it severs the grid to that station. Since wires can not connect across grids, this will permanently break solars for the remainder of the round even if you attempt to repair it.
Reproduction
Sever the lattice connecting solars to the rest of the station
Screenshots
As you can see, this lattice was cut. When trying to repair it by placing down a new lattice and a new wire it wont connect to the station since its a new grid now.

Additional context
Not sure if this is a lattice grid bug, a wire grid bug, or both.

I think the issue is that you can't connect two disparate grids using lattices. Ideally it would have some sort of intelligent behavior that would know to connect the two grids.


Collection model binding in mvc and upload file using ajax (dotnet core 3.preview-6)

I have one form with some fields and one collection of another fields that contains some input files.
So I need to post form using ajax and bind data collection to class (Model) in server side.
My main issue is that files of sub collections will pass null.
My file is type of IFormFile and posted data is (form data of browser network):

Earlier I was working with .net core 2.2, that it had big issue with sub collections files, so when I was using such sub collection it was throwing exception, I upgraded it to dot net core 3.preview-6 and now it's resolved.
How can I resolve this issue?

@bahmansh this is an ASP.NET Core MVC issue. Please file a new issue in https://github.com/aspnet/aspnetcore repo and we'll handle it there.


Link: What consitutues Compatibility with MSM?

I've been looking around and haven't found a document that seems to detail what a dev should do to make thier skills compatible with MSM. Can we get a link to such a document attached to the text:
It is important that you make your Skills compliant with msm so that they are easy to find and install in the future.

Hi there @dkemmet sorry for taking so long to come back to you on this one. In the intervening months, we've completely re-architected the way that msm link works. This means that if the Skill Author is using the msk link then there's nothing specific they need to do to ensure compatibility.
Do you think this is clear enough? If not I'm happy to add / revise documentation.
Kind regards, Kathy


joned field added to offers API endpoint (fixes #920)

joned field added to offers API endpoint (fixes #920)

Codecov Report

Merging #1003 into master will increase coverage by 0.4%.
The diff coverage is 85.71%.

@@            Coverage Diff            @@
##           master    #1003     +/-   ##
=========================================
+ Coverage   88.82%   89.23%   +0.4%
=========================================
  Files         108      110      +2
  Lines        2505     2591     +86
  Branches       28       31      +3
=========================================
+ Hits         2225     2312     +87
+ Misses        277      275      -2
- Partials        3        4      +1

Impacted Files
Coverage Δ

...end/apps/volontulo/tests/serializers/test_offer.py
100% <100%> (ø)
:arrow_up:

backend/apps/volontulo/tests/common.py
100% <100%> (ø)
:arrow_up:

backend/apps/volontulo/serializers.py
89.28% <60%> (+1.58%)
:arrow_up:

...ckend/apps/volontulo/tests/views/offers/commons.py
100% <0%> (ø)
:arrow_up:

...end/apps/volontulo/tests/views/api/test_contact.py
100% <0%> (ø)
:arrow_up:

...organizations-list/organizations-list.component.ts
100% <0%> (ø)

.../volontulo/tests/views/api/test_password_change.py
100% <0%> (ø)

backend/apps/volontulo/views/api.py
72.88% <0%> (+1.79%)
:arrow_up:

.../app/offers/create-offer/create-offer.component.ts
53.75% <0%> (+7.27%)
:arrow_up:

Continue to review full report at Codecov.

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


when use vectorDrawables.useSupportLibrary

Thank you to support FAB Menu
I have an issue with this package when I add this line to build.gradle in defaultConfig section.
vectorDrawables.useSupportLibrary = true
after add this code I get following Exception:
android.view.InflateException: Binary XML file line #110: Error inflating class com.github.clans.fab.FloatingActionButton

You might want to take a look at this related issue: https://github.com/Clans/FloatingActionButton/issues/273


add documentation comments to two types

What are the relevant tickets?
none, these things were introduced in #296 though
What's this PR do?
Ran across these two types in reading the code again, and just thought it would be a good idea to add a little documentation of what's up with them.
How should this be manually tested?
this is a non-code change, so just read the comments and make sure you think they make sense.

Codecov Report

Merging #358 (1cf98fe) into master (78a5ffc) will increase coverage by 4.78%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #358      +/-   ##
==========================================
+ Coverage   88.79%   93.57%   +4.78%
==========================================
  Files         123       60      -63
  Lines        3890     1385    -2505
  Branches      597      318     -279
==========================================
- Hits         3454     1296    -2158
+ Misses        394       88     -306
+ Partials       42        1      -41

Impacted Files
Coverage Δ

static/js/types/websites.ts
100.00% <ø> (ø)

content_sync/apps.py

repl.py

localdev/configs/api.py

...ort/management/commands/import_ocw_course_sites.py

websites/utils.py

users/models.py

users/admin.py

main/features.py

websites/admin.py

... and 54 more

Continue to review full report at Codecov.

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


Refactor "endnight DST" handling

This includes a slight refactor of the recent fix for "endnight DST" time conversions as well as additional hardening and other refactoring for clarity. Check out the individual commits for more details.
@alex-stone
/cc @zendesk/twrk

:+1:

Midnight seems an odd choice, it's incorrect for the vast majority of western countries. Isn't there a better way to spot the transition over a DST boundary?

Hey, @james2m. I don't think I follow. Is there a bug you're experiencing?

Yes, I was, but I can't re-create it easily as I had to pull Biz out just prior to this patch. I am scheduling time slots of 2 hours throughout the day and night and across US time zones, but because Biz Is handling DST at midnight I was getting loops and issues jumping back, and incorrect times after midnight.
So what I was getting at was why midnight instead of when Ruby knows its crossed DST?
I'd give it a shot if I thought it didn't clash with your approach, so figured ask first.

I apologize if I remain a little confused as the DST logic at its core isn't based around midnight. Let me give you some context as to what this PR is doing and how we handle spring-forward DST adjustments in general.
Typically, when a user tries to create a non-existent spring-forward time (e.g. 2:30am in US time zones in the spring), we add one hour and try again. This is almost identical to how Rails does it.
This PR implements a fix for spring-forward DST in a very specific case, namely for time zones where the skipped time period includes the hour between 11pm and midnight. When creating a time in that segment of time on the spring-forward date, we were adding an hour's worth of seconds to the underlying "day time" object, which returned a nonsensical result. Instead, we needed the logic to "roll over" the adjusted date to the next day properly. That's what this PR does (or more specifically, refactors).
With that said, hopefully it's apparent that the fix in this PR is very niche and shouldn't affect time calculations in US time zones.
If you could provide a specific example or two of where you're getting suspect results, I'm happy to dig into it. Without something concrete, though, it's difficult for me to diagnose the issue.

Thanks Craig, when time permits I'll re-integrate Biz and see if I can reproduce. The errors/loops we were seeing were on leap back when scheduling Windows into the future and some of those leapt back from DST.
Thanks for taking the time to reply in detail. Much appreciated.
James


Added support for optional fields

The fields for phone, email and address are now optional. Fixes #15 #16 #65
To be done:

UI optimization: currently, empty optional fields take up a lot of space. We need to conditionally render the UI.

I think we can merge this after merging the birthday one?

I think we can merge this after merging the birthday one?

Not sure but probably can merge now, since it merges with @vsamarth's branch and not with master. What do you guys think?

@gremmyz I think this allows the individual classes to have an Empty value and we still need to make modifications to the Person class to incorporate all these optional fields.
What I was thinking of was using something like PersonBuilder as @salty-flower suggested in #61 and storing these fields as Optional<...> so that we explicitly have to handle the case when there is a missing value, making it less error prone.

Makes sense, I'll work on the update after your merge?


[Foxglove Nodelet Manager] process had died

Description
Everything is working fine until I launch robot localization node package, then foxglove throws the error "terminate called after throwing an instance of 'XmlRpc::XmlRpcException'.

Version:
Platform: Jetson Xavier NX for robot, M1 macos for foxglove client

Steps To Reproduce

Launch foxglove bridge: roslaunch foxglove_bridge foxglove_bridge.launch port:=8765
Launch robot localization node with preset parameters: roslaunch robot_localization robot_localization.launch3.
Establish connection from foxglove studio on client side

Expected Behavior

Able to establish connection without any issue

Please provide the ROS version and the foxglove_bridge version.

ROS version: ROS melodic
Foxglove bridge version: 0.5.1

After some more digging into this issue, I realised that the error has nothing to do with the robot localization package itself, but instead the loading of the parameters, in my case the array parameters of process noise covariance and initial estimate covariance. How do I fix this?

This issue has already been fixed in the latest code: https://github.com/foxglove/ros-foxglove-bridge/pull/218.
ROS melodic is EOL and I don't think will get any more package updates. I recommend you build this package from source in your ROS workspace if you want to keep using melodic.


Start testing with the race detector.

Fixes #183

==================
WARNING: DATA RACE
Write by goroutine 6:
  runtime.mapassign1()
      /usr/local/go/src/runtime/hashmap.go:383 +0x0
  github.com/weaveworks/scope/report.(*NodeMetadatas).Merge()
      /home/vagrant/src/github.com/weaveworks/scope/report/merge.go:32 +0x1c4
  github.com/weaveworks/scope/report.(*Topology).Merge()
      /home/vagrant/src/github.com/weaveworks/scope/report/merge.go:18 +0x8e
  github.com/weaveworks/scope/report.(*Report).Merge()
      /home/vagrant/src/github.com/weaveworks/scope/report/merge.go:10 +0x80
  github.com/weaveworks/scope/xfer.(*realCollector).loop()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:107 +0x808

Previous read by goroutine 5:
  github.com/weaveworks/scope/xfer.func·008()
      /home/vagrant/src/github.com/weaveworks/scope/xfer/collector_test.go:46 +0x156
  github.com/weaveworks/scope/xfer.poll()
      /home/vagrant/src/github.com/weaveworks/scope/xfer/collector_test.go:97 +0x229
  github.com/weaveworks/scope/xfer.TestCollector()
      /home/vagrant/src/github.com/weaveworks/scope/xfer/collector_test.go:46 +0x650
  testing.tRunner()
      /usr/local/go/src/testing/testing.go:447 +0x133

Goroutine 6 (running) created at:
  github.com/weaveworks/scope/xfer.NewCollector()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:50 +0x2d9
  github.com/weaveworks/scope/xfer.TestCollector()
      /home/vagrant/src/github.com/weaveworks/scope/xfer/collector_test.go:25 +0x1fd
  testing.tRunner()
      /usr/local/go/src/testing/testing.go:447 +0x133

Goroutine 5 (running) created at:
  testing.RunTests()
      /usr/local/go/src/testing/testing.go:555 +0xd4e
  testing.(*M).Run()
      /usr/local/go/src/testing/testing.go:485 +0xe0
  main.main()
      github.com/weaveworks/scope/xfer/_test/_testmain.go:112 +0x381
==================
--- FAIL: TestCollector (0.01s)
	collector_test.go:95: missed the report
==================
WARNING: DATA RACE
Read by goroutine 12:
  github.com/weaveworks/scope/xfer.(*realCollector).loop()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:94 +0x3a5

Previous write by goroutine 6:
  github.com/weaveworks/scope/xfer.(*realCollector).loop()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:94 +0x3c3

Goroutine 12 (running) created at:
  github.com/weaveworks/scope/xfer.NewCollector()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:50 +0x2d9
  github.com/weaveworks/scope/xfer.TestCollectorQuitWithActiveConnections()
      /home/vagrant/src/github.com/weaveworks/scope/xfer/collector_test.go:57 +0x34
  testing.tRunner()
      /usr/local/go/src/testing/testing.go:447 +0x133

Goroutine 6 (running) created at:
  github.com/weaveworks/scope/xfer.NewCollector()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:50 +0x2d9
  github.com/weaveworks/scope/xfer.TestCollector()
      /home/vagrant/src/github.com/weaveworks/scope/xfer/collector_test.go:25 +0x1fd
  testing.tRunner()
      /usr/local/go/src/testing/testing.go:447 +0x133
==================
==================
WARNING: DATA RACE
Read by goroutine 13:
  github.com/weaveworks/scope/xfer.func·001()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:73 +0x57

Previous write by goroutine 8:
  github.com/weaveworks/scope/xfer.func·001()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:73 +0x75

Goroutine 13 (running) created at:
  github.com/weaveworks/scope/xfer.func·002()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:76 +0x412
  github.com/weaveworks/scope/xfer.(*realCollector).loop()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:111 +0x8ca

Goroutine 8 (finished) created at:
  github.com/weaveworks/scope/xfer.func·002()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:76 +0x412
  github.com/weaveworks/scope/xfer.(*realCollector).loop()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:111 +0x8ca
==================
==================
WARNING: DATA RACE
Read by goroutine 13:
  github.com/weaveworks/scope/xfer.reportCollector()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:158 +0x9e
  github.com/weaveworks/scope/xfer.func·001()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:75 +0x10c

Previous write by goroutine 8:
  github.com/weaveworks/scope/xfer.reportCollector()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:158 +0xbc
  github.com/weaveworks/scope/xfer.func·001()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:75 +0x10c

Goroutine 13 (running) created at:
  github.com/weaveworks/scope/xfer.func·002()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:76 +0x412
  github.com/weaveworks/scope/xfer.(*realCollector).loop()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:111 +0x8ca

Goroutine 8 (finished) created at:
  github.com/weaveworks/scope/xfer.func·002()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:76 +0x412
  github.com/weaveworks/scope/xfer.(*realCollector).loop()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:111 +0x8ca
==================
==================
WARNING: DATA RACE
Read by goroutine 13:
  github.com/weaveworks/scope/xfer.reportCollector()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:161 +0xe5
  github.com/weaveworks/scope/xfer.func·001()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:75 +0x10c

Previous write by goroutine 8:
  github.com/weaveworks/scope/xfer.reportCollector()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:161 +0x103
  github.com/weaveworks/scope/xfer.func·001()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:75 +0x10c

Goroutine 13 (running) created at:
  github.com/weaveworks/scope/xfer.func·002()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:76 +0x412
  github.com/weaveworks/scope/xfer.(*realCollector).loop()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:111 +0x8ca

Goroutine 8 (finished) created at:
  github.com/weaveworks/scope/xfer.func·002()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:76 +0x412
  github.com/weaveworks/scope/xfer.(*realCollector).loop()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:111 +0x8ca
==================
==================
WARNING: DATA RACE
Read by goroutine 13:
  github.com/weaveworks/scope/xfer.reportCollector()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:167 +0x1b1
  github.com/weaveworks/scope/xfer.func·001()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:75 +0x10c

Previous write by goroutine 8:
  github.com/weaveworks/scope/xfer.reportCollector()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:167 +0x1cf
  github.com/weaveworks/scope/xfer.func·001()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:75 +0x10c

Goroutine 13 (running) created at:
  github.com/weaveworks/scope/xfer.func·002()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:76 +0x412
  github.com/weaveworks/scope/xfer.(*realCollector).loop()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:111 +0x8ca

Goroutine 8 (finished) created at:
  github.com/weaveworks/scope/xfer.func·002()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:76 +0x412
  github.com/weaveworks/scope/xfer.(*realCollector).loop()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:111 +0x8ca
==================
==================
WARNING: DATA RACE
Read by goroutine 13:
  github.com/weaveworks/scope/xfer.reportCollector()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:171 +0x288
  github.com/weaveworks/scope/xfer.func·001()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:75 +0x10c

Previous write by goroutine 8:
  github.com/weaveworks/scope/xfer.reportCollector()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:171 +0x2a9
  github.com/weaveworks/scope/xfer.func·001()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:75 +0x10c

Goroutine 13 (running) created at:
  github.com/weaveworks/scope/xfer.func·002()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:76 +0x412
  github.com/weaveworks/scope/xfer.(*realCollector).loop()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:111 +0x8ca

Goroutine 8 (finished) created at:
  github.com/weaveworks/scope/xfer.func·002()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:76 +0x412
  github.com/weaveworks/scope/xfer.(*realCollector).loop()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:111 +0x8ca
==================
==================
WARNING: DATA RACE
Read by goroutine 13:
  github.com/weaveworks/scope/xfer.reportCollector()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:176 +0x2c9
  github.com/weaveworks/scope/xfer.func·001()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:75 +0x10c

Previous write by goroutine 8:
  github.com/weaveworks/scope/xfer.reportCollector()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:176 +0x2e7
  github.com/weaveworks/scope/xfer.func·001()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:75 +0x10c

Goroutine 13 (running) created at:
  github.com/weaveworks/scope/xfer.func·002()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:76 +0x412
  github.com/weaveworks/scope/xfer.(*realCollector).loop()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:111 +0x8ca

Goroutine 8 (finished) created at:
  github.com/weaveworks/scope/xfer.func·002()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:76 +0x412
  github.com/weaveworks/scope/xfer.(*realCollector).loop()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:111 +0x8ca
==================
==================
WARNING: DATA RACE
Read by goroutine 12:
  github.com/weaveworks/scope/xfer.(*realCollector).loop()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:118 +0x9d8

Previous write by goroutine 6:
  github.com/weaveworks/scope/xfer.(*realCollector).loop()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:118 +0x9f6

Goroutine 12 (running) created at:
  github.com/weaveworks/scope/xfer.NewCollector()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:50 +0x2d9
  github.com/weaveworks/scope/xfer.TestCollectorQuitWithActiveConnections()
      /home/vagrant/src/github.com/weaveworks/scope/xfer/collector_test.go:57 +0x34
  testing.tRunner()
      /usr/local/go/src/testing/testing.go:447 +0x133

Goroutine 6 (finished) created at:
  github.com/weaveworks/scope/xfer.NewCollector()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:50 +0x2d9
  github.com/weaveworks/scope/xfer.TestCollector()
      /home/vagrant/src/github.com/weaveworks/scope/xfer/collector_test.go:25 +0x1fd
  testing.tRunner()
      /usr/local/go/src/testing/testing.go:447 +0x133
==================
==================
WARNING: DATA RACE
Read by goroutine 12:
  github.com/weaveworks/scope/xfer.(*realCollector).loop()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:120 +0xab6

Previous write by goroutine 6:
  github.com/weaveworks/scope/xfer.(*realCollector).loop()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:120 +0xad4

Goroutine 12 (running) created at:
  github.com/weaveworks/scope/xfer.NewCollector()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:50 +0x2d9
  github.com/weaveworks/scope/xfer.TestCollectorQuitWithActiveConnections()
      /home/vagrant/src/github.com/weaveworks/scope/xfer/collector_test.go:57 +0x34
  testing.tRunner()
      /usr/local/go/src/testing/testing.go:447 +0x133

Goroutine 6 (finished) created at:
  github.com/weaveworks/scope/xfer.NewCollector()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:50 +0x2d9
  github.com/weaveworks/scope/xfer.TestCollector()
      /home/vagrant/src/github.com/weaveworks/scope/xfer/collector_test.go:25 +0x1fd
  testing.tRunner()
      /usr/local/go/src/testing/testing.go:447 +0x133
==================
==================
WARNING: DATA RACE
Read by goroutine 12:
  github.com/weaveworks/scope/xfer.(*realCollector).loop()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:123 +0xb26

Previous write by goroutine 6:
  github.com/weaveworks/scope/xfer.(*realCollector).loop()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:123 +0xb44

Goroutine 12 (running) created at:
  github.com/weaveworks/scope/xfer.NewCollector()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:50 +0x2d9
  github.com/weaveworks/scope/xfer.TestCollectorQuitWithActiveConnections()
      /home/vagrant/src/github.com/weaveworks/scope/xfer/collector_test.go:57 +0x34
  testing.tRunner()
      /usr/local/go/src/testing/testing.go:447 +0x133

Goroutine 6 (finished) created at:
  github.com/weaveworks/scope/xfer.NewCollector()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:50 +0x2d9
  github.com/weaveworks/scope/xfer.TestCollector()
      /home/vagrant/src/github.com/weaveworks/scope/xfer/collector_test.go:25 +0x1fd
  testing.tRunner()
      /usr/local/go/src/testing/testing.go:447 +0x133
==================
==================
WARNING: DATA RACE
Read by goroutine 18:
  github.com/weaveworks/scope/xfer.func·005()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:117 +0x59

Previous write by goroutine 16:
  github.com/weaveworks/scope/xfer.func·005()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:117 +0x77

Goroutine 18 (running) created at:
  github.com/weaveworks/scope/xfer.fwd()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:130 +0x19f
  github.com/weaveworks/scope/xfer.NewTCPPublisher()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:36 +0x27d
  github.com/weaveworks/scope/xfer_test.TestMerge()
      /home/vagrant/src/github.com/weaveworks/scope/xfer/merge_test.go:27 +0x210
  testing.tRunner()
      /usr/local/go/src/testing/testing.go:447 +0x133

Goroutine 16 (running) created at:
  github.com/weaveworks/scope/xfer.fwd()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:130 +0x19f
  github.com/weaveworks/scope/xfer.NewTCPPublisher()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:36 +0x27d
  github.com/weaveworks/scope/xfer_test.TestMerge()
      /home/vagrant/src/github.com/weaveworks/scope/xfer/merge_test.go:21 +0xab
  testing.tRunner()
      /usr/local/go/src/testing/testing.go:447 +0x133
==================
==================
WARNING: DATA RACE
Read by goroutine 18:
  github.com/weaveworks/scope/xfer.func·005()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:120 +0xcb

Previous write by goroutine 16:
  github.com/weaveworks/scope/xfer.func·005()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:120 +0xe9

Goroutine 18 (running) created at:
  github.com/weaveworks/scope/xfer.fwd()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:130 +0x19f
  github.com/weaveworks/scope/xfer.NewTCPPublisher()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:36 +0x27d
  github.com/weaveworks/scope/xfer_test.TestMerge()
      /home/vagrant/src/github.com/weaveworks/scope/xfer/merge_test.go:27 +0x210
  testing.tRunner()
      /usr/local/go/src/testing/testing.go:447 +0x133

Goroutine 16 (running) created at:
  github.com/weaveworks/scope/xfer.fwd()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:130 +0x19f
  github.com/weaveworks/scope/xfer.NewTCPPublisher()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:36 +0x27d
  github.com/weaveworks/scope/xfer_test.TestMerge()
      /home/vagrant/src/github.com/weaveworks/scope/xfer/merge_test.go:21 +0xab
  testing.tRunner()
      /usr/local/go/src/testing/testing.go:447 +0x133
==================
==================
WARNING: DATA RACE
Read by goroutine 19:
  github.com/weaveworks/scope/xfer.(*TCPPublisher).loop()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:53 +0x4a

Previous write by goroutine 17:
  github.com/weaveworks/scope/xfer.(*TCPPublisher).loop()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:53 +0x68

Goroutine 19 (running) created at:
  github.com/weaveworks/scope/xfer.NewTCPPublisher()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:36 +0x2a0
  github.com/weaveworks/scope/xfer_test.TestMerge()
      /home/vagrant/src/github.com/weaveworks/scope/xfer/merge_test.go:27 +0x210
  testing.tRunner()
      /usr/local/go/src/testing/testing.go:447 +0x133

Goroutine 17 (running) created at:
  github.com/weaveworks/scope/xfer.NewTCPPublisher()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:36 +0x2a0
  github.com/weaveworks/scope/xfer_test.TestMerge()
      /home/vagrant/src/github.com/weaveworks/scope/xfer/merge_test.go:21 +0xab
  testing.tRunner()
      /usr/local/go/src/testing/testing.go:447 +0x133
==================
==================
WARNING: DATA RACE
Read by goroutine 19:
  github.com/weaveworks/scope/xfer.(*TCPPublisher).loop()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:62 +0xab

Previous write by goroutine 17:
  github.com/weaveworks/scope/xfer.(*TCPPublisher).loop()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:62 +0xc9

Goroutine 19 (running) created at:
  github.com/weaveworks/scope/xfer.NewTCPPublisher()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:36 +0x2a0
  github.com/weaveworks/scope/xfer_test.TestMerge()
      /home/vagrant/src/github.com/weaveworks/scope/xfer/merge_test.go:27 +0x210
  testing.tRunner()
      /usr/local/go/src/testing/testing.go:447 +0x133

Goroutine 17 (running) created at:
  github.com/weaveworks/scope/xfer.NewTCPPublisher()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:36 +0x2a0
  github.com/weaveworks/scope/xfer_test.TestMerge()
      /home/vagrant/src/github.com/weaveworks/scope/xfer/merge_test.go:21 +0xab
  testing.tRunner()
      /usr/local/go/src/testing/testing.go:447 +0x133
==================
==================
WARNING: DATA RACE
Read by goroutine 23:
  github.com/weaveworks/scope/xfer.reportCollector()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:207 +0xb30
  github.com/weaveworks/scope/xfer.func·001()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:75 +0x10c

Previous write by goroutine 8:
  github.com/weaveworks/scope/xfer.reportCollector()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:207 +0xb51
  github.com/weaveworks/scope/xfer.func·001()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:75 +0x10c

Goroutine 23 (running) created at:
  github.com/weaveworks/scope/xfer.func·002()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:76 +0x412
  github.com/weaveworks/scope/xfer.(*realCollector).loop()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:111 +0x8ca

Goroutine 8 (finished) created at:
  github.com/weaveworks/scope/xfer.func·002()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:76 +0x412
  github.com/weaveworks/scope/xfer.(*realCollector).loop()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:111 +0x8ca
==================
==================
WARNING: DATA RACE
Read by goroutine 21:
  github.com/weaveworks/scope/xfer.reportCollector()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:193 +0x831
  github.com/weaveworks/scope/xfer.func·001()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:75 +0x10c

Previous write by goroutine 23:
  github.com/weaveworks/scope/xfer.reportCollector()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:193 +0x84f
  github.com/weaveworks/scope/xfer.func·001()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:75 +0x10c

Goroutine 21 (running) created at:
  github.com/weaveworks/scope/xfer.func·002()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:76 +0x412
  github.com/weaveworks/scope/xfer.(*realCollector).loop()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:111 +0x8ca

Goroutine 23 (running) created at:
  github.com/weaveworks/scope/xfer.func·002()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:76 +0x412
  github.com/weaveworks/scope/xfer.(*realCollector).loop()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:111 +0x8ca
==================
==================
WARNING: DATA RACE
Read by goroutine 21:
  github.com/weaveworks/scope/xfer.reportCollector()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:203 +0xa98
  github.com/weaveworks/scope/xfer.func·001()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:75 +0x10c

Previous write by goroutine 23:
  github.com/weaveworks/scope/xfer.reportCollector()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:203 +0xab6
  github.com/weaveworks/scope/xfer.func·001()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:75 +0x10c

Goroutine 21 (running) created at:
  github.com/weaveworks/scope/xfer.func·002()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:76 +0x412
  github.com/weaveworks/scope/xfer.(*realCollector).loop()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:111 +0x8ca

Goroutine 23 (running) created at:
  github.com/weaveworks/scope/xfer.func·002()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:76 +0x412
  github.com/weaveworks/scope/xfer.(*realCollector).loop()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:111 +0x8ca
==================
==================
WARNING: DATA RACE
Read by goroutine 16:
  github.com/weaveworks/scope/xfer.func·005()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:127 +0x353

Previous write by goroutine 18:
  github.com/weaveworks/scope/xfer.func·005()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:127 +0x371

Goroutine 16 (running) created at:
  github.com/weaveworks/scope/xfer.fwd()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:130 +0x19f
  github.com/weaveworks/scope/xfer.NewTCPPublisher()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:36 +0x27d
  github.com/weaveworks/scope/xfer_test.TestMerge()
      /home/vagrant/src/github.com/weaveworks/scope/xfer/merge_test.go:21 +0xab
  testing.tRunner()
      /usr/local/go/src/testing/testing.go:447 +0x133

Goroutine 18 (running) created at:
  github.com/weaveworks/scope/xfer.fwd()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:130 +0x19f
  github.com/weaveworks/scope/xfer.NewTCPPublisher()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:36 +0x27d
  github.com/weaveworks/scope/xfer_test.TestMerge()
      /home/vagrant/src/github.com/weaveworks/scope/xfer/merge_test.go:27 +0x210
  testing.tRunner()
      /usr/local/go/src/testing/testing.go:447 +0x133
==================
==================
WARNING: DATA RACE
Read by goroutine 26:
  github.com/weaveworks/scope/xfer.func·004()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:198 +0x65

Previous write by goroutine 25:
  github.com/weaveworks/scope/xfer.func·004()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:198 +0x86

Goroutine 26 (running) created at:
  github.com/weaveworks/scope/xfer.reportCollector()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:202 +0xa82
  github.com/weaveworks/scope/xfer.func·001()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:75 +0x10c

Goroutine 25 (running) created at:
  github.com/weaveworks/scope/xfer.reportCollector()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:202 +0xa82
  github.com/weaveworks/scope/xfer.func·001()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:75 +0x10c
==================
==================
WARNING: DATA RACE
Read by goroutine 17:
  github.com/weaveworks/scope/xfer.(*TCPPublisher).loop()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:65 +0x1ce

Previous write by goroutine 19:
  github.com/weaveworks/scope/xfer.(*TCPPublisher).loop()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:65 +0x1ec

Goroutine 17 (running) created at:
  github.com/weaveworks/scope/xfer.NewTCPPublisher()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:36 +0x2a0
  github.com/weaveworks/scope/xfer_test.TestMerge()
      /home/vagrant/src/github.com/weaveworks/scope/xfer/merge_test.go:21 +0xab
  testing.tRunner()
      /usr/local/go/src/testing/testing.go:447 +0x133

Goroutine 19 (running) created at:
  github.com/weaveworks/scope/xfer.NewTCPPublisher()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:36 +0x2a0
  github.com/weaveworks/scope/xfer_test.TestMerge()
      /home/vagrant/src/github.com/weaveworks/scope/xfer/merge_test.go:27 +0x210
  testing.tRunner()
      /usr/local/go/src/testing/testing.go:447 +0x133
==================
==================
WARNING: DATA RACE
Read by goroutine 17:
  github.com/weaveworks/scope/xfer.(*TCPPublisher).loop()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:70 +0x25e

Previous write by goroutine 19:
  github.com/weaveworks/scope/xfer.(*TCPPublisher).loop()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:70 +0x27c

Goroutine 17 (running) created at:
  github.com/weaveworks/scope/xfer.NewTCPPublisher()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:36 +0x2a0
  github.com/weaveworks/scope/xfer_test.TestMerge()
      /home/vagrant/src/github.com/weaveworks/scope/xfer/merge_test.go:21 +0xab
  testing.tRunner()
      /usr/local/go/src/testing/testing.go:447 +0x133

Goroutine 19 (running) created at:
  github.com/weaveworks/scope/xfer.NewTCPPublisher()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:36 +0x2a0
  github.com/weaveworks/scope/xfer_test.TestMerge()
      /home/vagrant/src/github.com/weaveworks/scope/xfer/merge_test.go:27 +0x210
  testing.tRunner()
      /usr/local/go/src/testing/testing.go:447 +0x133
==================
==================
WARNING: DATA RACE
Read by goroutine 17:
  github.com/weaveworks/scope/xfer.(*TCPPublisher).loop()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:79 +0x53a

Previous write by goroutine 19:
  github.com/weaveworks/scope/xfer.(*TCPPublisher).loop()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:79 +0x558

Goroutine 17 (running) created at:
  github.com/weaveworks/scope/xfer.NewTCPPublisher()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:36 +0x2a0
  github.com/weaveworks/scope/xfer_test.TestMerge()
      /home/vagrant/src/github.com/weaveworks/scope/xfer/merge_test.go:21 +0xab
  testing.tRunner()
      /usr/local/go/src/testing/testing.go:447 +0x133

Goroutine 19 (running) created at:
  github.com/weaveworks/scope/xfer.NewTCPPublisher()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:36 +0x2a0
  github.com/weaveworks/scope/xfer_test.TestMerge()
      /home/vagrant/src/github.com/weaveworks/scope/xfer/merge_test.go:27 +0x210
  testing.tRunner()
      /usr/local/go/src/testing/testing.go:447 +0x133
==================
==================
WARNING: DATA RACE
Read by goroutine 17:
  github.com/weaveworks/scope/xfer.(*TCPPublisher).loop()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:86 +0x77e

Previous write by goroutine 19:
  github.com/weaveworks/scope/xfer.(*TCPPublisher).loop()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:86 +0x79c

Goroutine 17 (running) created at:
  github.com/weaveworks/scope/xfer.NewTCPPublisher()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:36 +0x2a0
  github.com/weaveworks/scope/xfer_test.TestMerge()
      /home/vagrant/src/github.com/weaveworks/scope/xfer/merge_test.go:21 +0xab
  testing.tRunner()
      /usr/local/go/src/testing/testing.go:447 +0x133

Goroutine 19 (running) created at:
  github.com/weaveworks/scope/xfer.NewTCPPublisher()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:36 +0x2a0
  github.com/weaveworks/scope/xfer_test.TestMerge()
      /home/vagrant/src/github.com/weaveworks/scope/xfer/merge_test.go:27 +0x210
  testing.tRunner()
      /usr/local/go/src/testing/testing.go:447 +0x133
==================
==================
WARNING: DATA RACE
Read by goroutine 19:
  github.com/weaveworks/scope/xfer.(*TCPPublisher).loop()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:92 +0xa3c

Previous write by goroutine 17:
  github.com/weaveworks/scope/xfer.(*TCPPublisher).loop()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:92 +0xa5a

Goroutine 19 (running) created at:
  github.com/weaveworks/scope/xfer.NewTCPPublisher()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:36 +0x2a0
  github.com/weaveworks/scope/xfer_test.TestMerge()
      /home/vagrant/src/github.com/weaveworks/scope/xfer/merge_test.go:27 +0x210
  testing.tRunner()
      /usr/local/go/src/testing/testing.go:447 +0x133

Goroutine 17 (running) created at:
  github.com/weaveworks/scope/xfer.NewTCPPublisher()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:36 +0x2a0
  github.com/weaveworks/scope/xfer_test.TestMerge()
      /home/vagrant/src/github.com/weaveworks/scope/xfer/merge_test.go:21 +0xab
  testing.tRunner()
      /usr/local/go/src/testing/testing.go:447 +0x133
==================
==================
WARNING: DATA RACE
Read by goroutine 19:
  github.com/weaveworks/scope/xfer.(*TCPPublisher).loop()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:97 +0xacc

Previous write by goroutine 17:
  github.com/weaveworks/scope/xfer.(*TCPPublisher).loop()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:97 +0xaea

Goroutine 19 (running) created at:
  github.com/weaveworks/scope/xfer.NewTCPPublisher()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:36 +0x2a0
  github.com/weaveworks/scope/xfer_test.TestMerge()
      /home/vagrant/src/github.com/weaveworks/scope/xfer/merge_test.go:27 +0x210
  testing.tRunner()
      /usr/local/go/src/testing/testing.go:447 +0x133

Goroutine 17 (running) created at:
  github.com/weaveworks/scope/xfer.NewTCPPublisher()
      github.com/weaveworks/scope/xfer/_test/_obj_test/publisher.go:36 +0x2a0
  github.com/weaveworks/scope/xfer_test.TestMerge()
      /home/vagrant/src/github.com/weaveworks/scope/xfer/merge_test.go:21 +0xab
  testing.tRunner()
      /usr/local/go/src/testing/testing.go:447 +0x133
==================

Interestingly it only fails when run with coverage enabled

http://herman.asia/running-the-go-race-detector-with-cover

This looks 'real' (even if its just in the tests)
==================
WARNING: DATA RACE
Write by goroutine 6:
  runtime.mapassign1()
      /usr/local/go/src/runtime/hashmap.go:383 +0x0
  github.com/weaveworks/scope/report.(*NodeMetadatas).Merge()
      /home/vagrant/src/github.com/weaveworks/scope/report/merge.go:32 +0x1c4
  github.com/weaveworks/scope/report.(*Topology).Merge()
      /home/vagrant/src/github.com/weaveworks/scope/report/merge.go:18 +0x8e
  github.com/weaveworks/scope/report.(*Report).Merge()
      /home/vagrant/src/github.com/weaveworks/scope/report/merge.go:10 +0x80
  github.com/weaveworks/scope/xfer.(*realCollector).loop()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:109 +0x718

Previous read by goroutine 5:
  github.com/weaveworks/scope/xfer.func·008()
      /home/vagrant/src/github.com/weaveworks/scope/xfer/collector_test.go:46 +0x74
  github.com/weaveworks/scope/xfer.poll()
      /home/vagrant/src/github.com/weaveworks/scope/xfer/collector_test.go:97 +0x229
  github.com/weaveworks/scope/xfer.TestCollector()
      /home/vagrant/src/github.com/weaveworks/scope/xfer/collector_test.go:46 +0x650
  testing.tRunner()
      /usr/local/go/src/testing/testing.go:447 +0x133

Goroutine 6 (running) created at:
  github.com/weaveworks/scope/xfer.NewCollector()
      github.com/weaveworks/scope/xfer/_test/_obj_test/collector.go:52 +0x2b8
  github.com/weaveworks/scope/xfer.TestCollector()
      /home/vagrant/src/github.com/weaveworks/scope/xfer/collector_test.go:25 +0x1fd
  testing.tRunner()
      /usr/local/go/src/testing/testing.go:447 +0x133

Goroutine 5 (running) created at:
  testing.RunTests()
      /usr/local/go/src/testing/testing.go:555 +0xd4e
  testing.(*M).Run()
      /usr/local/go/src/testing/testing.go:485 +0xe0
  main.main()
      github.com/weaveworks/scope/xfer/_test/_testmain.go:112 +0x381
==================

Nice! LGTM.


[rom_ctrl] D2(S) Signoff

Description
Ensure D2(S) signoff criteria are still maintained (this is not a focus area block).

Changes since ES tapeout include misc changes in docs, general reggen improvements.
The only notable change in functionality was the removal of the S&P layer, which is already fully modeled and tested in DV.
No TODOs have been added to the code.
The currently claimed design stage D3 is hence still fulfilled.
$ git log Earlgrey-M2.5.2-RC0..HEAD --oneline hw/ip/gpio

c721c51c13 [rtl, prim] Add 'commit' functionality to prim_count
fc8484601e [reggen,hw] Create index parameter for registers windows
de31bdf1c2 [reggen] Remove the devmode input
b6d376bc56 [dv] Fix timeout in rom_ctrl stress tests
803d9aec77 [prim, rom_ctrl] Remove S&P layer from data scrambling
f9af60328d [rom_ctrl,sival] Add a list of testable features to rom_ctrl.hjson
1b16ca2122 [reggen] Add mubi support SWAccess that sets/clears a reg
59f8142826 [doc] Moved badges over to using hosted images
2ff1f6fbae [doc] rom_ctrl registers and interfaces now use CMDGEN
d67e35d864 [reggen] Generate constants for only the main block
7688e714e8 [reggen] Add initial support for version and cip_id hjson fields
fbd888eea8 Revert "[reggen] Add CIP_IDs and bump all major versions"
0ba10b3cd3 [reggen] Add CIP_IDs and bump all major versions

@rswarbrick can you take a look at this issue and close if you agree that D2S is still fulfilled?

I've just looked through closely. Yes, I believe everything meets D2S.
I think the "D3" above was a typo? (There have been changes to the RTL and I don't have access to a CDC tool, so I can't be certain that the "Lint/CDC clean" item is satisfied)

I mentioned D3 since that is what the Hjson currently says:
https://github.com/lowRISC/opentitan/blob/81d581d6597132e0ec2201e595cc28d88bab9d0c/hw/ip/rom_ctrl/data/rom_ctrl.hjson#L20-L28
AscentLint was clean last time I checked:

For CDC/RDC we're still not able to sign this off at the block-level, so No block-level flow available - waived to top-level signoff. is still accurate.

Ah cool, that makes sense. Thanks!

PR https://github.com/lowRISC/opentitan/pull/21992 got merged after this sign-off, so I'm reopening this issue for a quick reassessment.

PR https://github.com/lowRISC/opentitan/pull/21992 switched the ROM size definition to a mechanism that is overridable from the top-level hjson, similarly how this is done for SRAM_CTRL. It does not change the functionality, nor the size used inside top_earlgrey. It did however add two configurations (32kB and 64kB) to the block-level regressions, since these are the two common sizes used by Earlgrey and Darjeeling.
I don't think this should impact the D* status, however, we should take a look at the coverage and pass rates on the DV side.
Hence, it probably makes sense to close this and reopen the V2S signoff instead.

Okay, since #21992 did not change functionality, we can keep rom_ctrl signed off at D2S. Regression results are still at V2 level as well. :+1:


Added issue templates

Issue templates help users to report bugs and wish for features.
Took it from my repo https://github.com/stared/livelossplot/issues/new/choose.

@stared Thank you for the contribution :heart:


The pitch is unstable.

Self Checks

[X] I have thoroughly reviewed the project documentation (installation, training, inference) but couldn't find any relevant information that meets my needs. English 中文 日本語 Portuguese (Brazil)
[X] I have searched for existing issues search for existing issues, including closed ones.
[X] I confirm that I am using English to submit this report (我已阅读并同意 Language Policy).
[X] [FOR CHINESE USERS] 请务必使用英文提交 Issue，否则会被关闭。谢谢！:）
[X] Please do not modify this template :) and fill in all the required fields.

1. Is this request related to a challenge you're experiencing? Tell us your story.
Using the audio file of the same sample, the audio generated by multiple inferences is like multiple people talking. It doesn't feel like the same person.
2. What is your suggested solution?
Improve the stability of pitch generation.
3. Additional context or comments
No response
4. Can you help us with this feature?

[ ] I am interested in contributing to this feature.

https://speech.fish.audio/inference/#http-api-inference

I used audio samples of women, and sometimes even a man's voice would appear.

Enconuter the same issues with fish-speech 1.5.


npm install of latest version fails

When trying to install the latest (both 0.3.7 and 0.3.8) version, npm throws a bunch of compile errors. This might be related to my latest PR, although I'm not sure.
These are the last few lines:
npm ERR! In file included from ../../nan/nan_new.h:189,
npm ERR!                  from ../../nan/nan.h:292,
npm ERR!                  from ../src/ivrapplications.h:4,
npm ERR!                  from ../src/ivrapplications.cpp:1:
npm ERR! ../../nan/nan_implementation_12_inl.h:78:35: note:   initializing argument 1 of ‘static Nan::imp::FactoryBase<v8::External>::return_t Nan::imp::Factory<v8::External>::New(void*)’
npm ERR!    78 | Factory<v8::External>::New(void * value) {

Oh.. I tested it on windows, I'll fix it for linux until tomorrow.

Perfect, thanks! Maybe we should set up a github action to run the build on every PR and merge to main (or master, I think you still call it) :)


BS4 beta 2 updates for Table

https://github.com/reactstrap/reactstrap/issues/575

@TheSharpieOne I think this one is good to go. Let me know if there is anything else.


Cropping images in photoshop with the help of java

Hi all,
We have co-ordinate value and an image. Now, what i need is to crop image with respect to co-ordinate value and save it to local drive. can anyone help me out.
Thanks

I don't understand what you mean ? you said photoshop and java, but this is a PHP package not related to photoshop at all.
If you need a program to "simply" crop images, you may want to take a look at imagemagick: https://codeyarns.com/2014/11/15/how-to-crop-image-using-imagemagick/


Consolidate the way we write CSS

There have been ongoing discussions the last week about how we're going to go about writing CSS. Currently things are ok, but they are inconsistent and suffer from the age-old problem of CSS: cascading, improper modularity, lack of namespacing etc.
Inline styles make things way better, but they suffer from a few problems. The more objective ones are:

pseudo-selectors are clunky, :hover, :visited, etc. are hard to use, unless using event handlers
shadow dom is almost impossible to style (e.g. browser-defined insides of some nodes)
hey make the DOM bigger and hard to inspect
theming information would require being part of application state.

The general conclusion was that a mix of css files and inlined styles would be nice. React-free-style could help us with that: https://github.com/blakeembrey/react-free-style. Alternatively we could also write our own thing.
This issue is about unifying the way we do things.

Also relevant to leave here: https://github.com/blakeembrey/free-style#why

Fixed by https://github.com/mozilla/tofino/pull/163


Add readme.typescript.md for DNS

I'm keeping this readme.typescript.md file simple (no multi-api) for now because I'm testing out the TypeScript SwaggerToSDK generator pipeline. We can come back and add multi-api later.
This checklist is used to make sure that common issues in a pull request are addressed. This will expedite the process of getting your pull request merged and avoid extra work on your part to fix issues discovered during the review process.
PR information

[ ] The title of the PR is clear and informative.
[ ] There are a small number of commits, each of which have an informative message. This means that previously merged commits do not appear in the history of the PR. For information on cleaning up the commits in your pull request, see this page.
[ ] Except for special cases involving multiple contributors, the PR is started from a fork of the main repository, not a branch.
[ ] If applicable, the PR references the bug/issue that it fixes.
[ ] Swagger files are correctly named (e.g. the api-version in the path should match the api-version in the spec).

Quality of Swagger

[ ] I have read the contribution guidelines.
[ ] My spec meets the review criteria:

[ ] The spec conforms to the Swagger 2.0 specification.
[ ] The spec follows the guidelines described in the Swagger checklist document.
[ ] Validation tools were run on swagger spec(s) and have all been fixed in this PR.

Automation for azure-sdk-for-go

Automation for azure-sdk-for-java

Automation for azure-sdk-for-node

Automation for azure-sdk-for-python

Automation for azure-sdk-for-ruby

Can one of the admins verify this patch?


Create a PR template

Create the PR template, like whenever contributor raises the PR the PR templates should appear to contributor.
PR template should include the important heading should contributor should fill according to the issue the contributor have worked on.

Ask if you need any details.

Can you assign me this one? Just tell for what you have to create the template for like documentation, any update in code or other thing.

Hey @milansamuel609, thanks for your contribution.
I mean you gave take references of common questions like what issue is solve like the issue number so that in the issue PR will automatically link, and other question like what changes you have make any preview like screenshot or viedeo! I think you got the idea but still take the reference from open source community see how other open source project have their PR template choose good and add it to this project.

Hey @milansamuel609, thanks for your contribution. I mean you gave take references of common questions like what issue is solve like the issue number so that in the issue PR will automatically link, and other question like what changes you have make any preview like screenshot or viedeo! I think you got the idea but still take the reference from open source community see how other open source project have their PR template choose good and add it to this project.

Sure. I will do my best.

Hey @milansamuel609, thanks for your contribution.

No problem @Suraj-kumar00 . Thank you once again for giving me such an opportunity to work on a really amazing project.


⚠ Bofrost.at has degraded performance

In c9f4508, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1134 ms

Resolved: Bofrost.at performance has improved in 184f786.


Update Copilot.tsx issue #112

Description
This PR fixes #

Hey @Anubhavbaranwal thanks for the contribution, we will suggest to first make a comment in the issue before you make the PR so that we can appropriately assign the contributor to that corresponding issue. I will recommend if you can please add a comment on #112 that you would like to work on that issue

Closing this for now @Anubhavbaranwal, please comment on the issue and contribute with the PR


Allow setting backup path to ~/.shallow-backup

Closes #265.
If ~/.shallow-backup resolves to a directory, then it can't be a config file to migrate. Tests pass (although I don't think there's an "upgrade" test) and manual testing appears to work as expected.
btw, thanks for this handy program :)

 Here is an overview of what got changed by this pull request:

Complexity decreasing per file
==============================
+ shallow_backup/upgrade.py  -1

See the complete overview on Codacy

Looks good to me. Thanks for the fix!


options: Don't start envoy without a config, fix and move tests for that out of hotrestart_test into new script

Description: Adds a validate() method to Options to that ensures a config has been set.
Removes a stanza from hotrestart_test.sh that was trying to test that running envoy with no args results in an exit-status of 1. However, what it actually tested was that running envoy with a misspelled arg --base_id vs --base-id results in an exit status of 1. Running Envoy with bogus args might be a useful test, but does not belong in hot_restart_test.sh.
What the comments indicated it was trying to test actually doesn't work as expected: Envoy was running a server with no config which is not sensible.
Added a new run_envoy_test.sh into which we can put odd corner-cases for expected behavior when starting Envoy with various flags. Currently there are just failure cases in there.
Risk Level: low -- the main risk is whether there's a valid use-case for starting Envoy without --config-path or --config-yaml. If so, it's not tested.
Testing: //test/...
Docs Changes: n/a
Release Notes: n/a

FYI since there was an explicit test for this I decided to explore when that got added. It was in #2192  by @ccaraman and reviewed by @mattklein123 :)
I am agnostic to what the behavior should be here...but think it's probably better to avoid the zero-arg server start since what could it possibly do?  :)  But I just wanted to clean up and understand the hotrestart_test.sh script since I might be messing with that.


Add custom CSS examples

Loving the new custom CSS feature, I'm using it for a couple small tweaks.
/* Minimal padding between items in item list */
.item {
    margin-bottom: 2px;
}

/* Remove favicon next to title in item list */
.item-title img {
    display: none;
}

/* Remove "Comments" from item list (still visible in entry) */
.item-meta-icons a[data-comments-link=true] {
    display: none;
}

Is there a place you can post some other examples of custom CSS snippets? For example, maybe not this repo, but this repo might be a better place?

The How-To's section might be the right place: https://miniflux.app/docs/howto.html


feat: add job bounded context

resolving https://github.com/odpf/optimus/issues/575

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

1452 of 1617 (89.8%)  changed or added relevant lines in 12 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+1.6%) to 80.049%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

core/job/handler/v1beta1/job.go
333
336
99.11%

core/job/service/job_service.go
455
458
99.34%

core/tenant/secret.go
0
6
0.0%

internal/errors/errors.go
0
9
0.0%

core/job/service/plugin_service.go
114
126
90.48%

ext/resourcemanager/optimus.go
75
89
84.27%

models/plugin.go
0
24
0.0%

core/job/handler/v1beta1/job_adapter.go
237
331
71.6%

Totals

Change from base Build<PHONE_NUMBER>:
1.6%

Covered Lines:
9405

Relevant Lines:
11749

💛  - Coveralls


fix: only evaluate retry expression for fail/error node. Fixes #13058

Fixes #13058
Motivation

Evaluate retry expression after evaluating lastchildstatus,

so that successful workflow/node doesn't receive retryStrategy.expression evaluated to false in the message field

This also aligns with
https://github.com/argoproj/argo-workflows/blob/6c8393fa392557637e9a23faa9a38696acaba207/workflow/controller/operator.go#L1091

retry only intended to work with nodes that are failed or errored

Modifications

Verification

add unit test, fail
add operator change, succeed
workflow run verify retryStrategy.expression evaluated to false doesn't show up on successful workflow

/retest


bug: unique wrong value being assigned for a given value in deployTokenContractUDC

Bug Report
Madara version:
d1c45e178c05e1f718fcd4c783c735d9c12f0f02
Current behavior:
The unique parameter in deployTokenContractUDC, for now, is assigned to the wrong value given the boolean, this went uncaught because of extrinsic testing not being very tight.
Expected behavior:
The right value should be assigned for a given boolean value for unique.

My PR for #617 will resolve this as well.

@abdelhamidbakhta you can close this as well, it was also resolved in #631


ipcRenderer.on issue

I have successfully integrated this package and able to listen to click on menu items in angular2 components. But the issue is I cannot bind the functions properly inside it suppose I try to update some text inside the text box or change the bool value it does not work, however when I do a console.log("function is hit") it appears in electron devtoogle window, but values are not assigned.
this._ngZone.run(() => { _electronService.ipcRenderer.on('open-file',  this.enableError.bind(this));
enableError()
{
console.log("function is hit");
this.something= true/false  it does not work
}

instead of using
this._ngZone.run(() => { _electronService.ipcRenderer.on('open-file', this.enableError.bind(this));
enableError()
{
console.log("function is hit");
this.something= true/false it does not work
}

I would do
_electronService.ipcRenderer.on('open-file', this.enableError.bind(this));

enableError(){
   this._ngZone.run(()=> {
     console.log("function is hit");
     this.something= true; ///false it does not work
   });
}

Thanks for  a quick help. I tried your suggestion still facing the issue, however i also remove this._ngZone.run(()=> from all the places I still not able to execute the calls in angular, however console prints just fine.

console.log will work fine, because it's not related to angular at all.
if you call it like
this._electronService.ipcRenderer.on('open-file', ()=> {
    this.enableError();
});

it should work.
But if you want to update bound data in angular templates, you've to ensure ngZone is used to tell angular that the execution from outside angular has finished. in this case, setting the bound value on your component class has to be inside of ngZone...

Hmm OK, do you have some sample code to help me understand this logic better?

But if you want to update bound data in angular templates, you've to ensure  ngZone  is used to tell angular that the execution from outside angular has finished. in this case, setting the bound value on your component class has to be inside of ngZone...

during the weekendm I'll create a short example using node.js fs module. looks like you're trying to read a file from the harddisk and show something depending on the file existance or it's content, right

no actually I am trying to  do a bool visibility of some control hide/unhide in angular component  from electron menubar

ahh i see,  so you are using  browserWindow.webContents.send from the main proc and want the angular app to "react" 🤣  (let the angular app react :D) - sorry it's friday - on the message

:+1:  correct :dagger:

@abhargav7 I've updated the example at https://github.com/ThorstenHans/electron-ngx-sample there is a button in the menu which toggles the notify button on the kittendetails component.
HTH 🤘

closing this one. @abhargav7 If you've further question feel free to open another issue


Add-Migration InitialMigration Command Issue

I have added both nuget displayed in location but in two different project it behaves different.
Code Downloaded From Sample
PM> Add-Migration InitialMigration
Add-Migration : The term 'Add-Migration' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the
path is correct and try again.
At line:1 char:1

Add-Migration InitialMigration

- CategoryInfo          : ObjectNotFound: (Add-Migration:String) [], CommandNotFoundException
- FullyQualifiedErrorId : CommandNotFoundException

Code I Wrote
PM> Add-Migration InitialMigration
System.BadImageFormatException: Could not load file or assembly 'projectname' or one of its dependencies. An attempt was made to load a program with an incorrect format.
File name: 'projectname'
at System.Reflection.RuntimeAssembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)
at System.Reflection.RuntimeAssembly.nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)
at System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName assemblyRef, Evidence assemblySecurity, RuntimeAssembly reqAssembly, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)
at System.Reflection.Assembly.Load(AssemblyName assemblyRef)
at Microsoft.Data.Entity.Design.Internal.StartupInvoker..ctor(String startupAssemblyName, String environment)
at Microsoft.Data.Entity.Design.DbContextOperations..ctor(ILoggerProvider loggerProvider, String assemblyName, String startupAssemblyName, String environment)
at Microsoft.Data.Entity.Design.MigrationsOperations..ctor(ILoggerProvider loggerProvider, String assemblyName, String startupAssemblyName, String environment, String projectDir, String rootNamespace)
at Microsoft.Data.Entity.Design.OperationExecutor.<>c__DisplayClass3_0.<.ctor>b__3()
at Microsoft.Data.Entity.Internal.LazyRef1.get_Value()    at Microsoft.Data.Entity.Design.OperationExecutor.<AddMigrationImpl>d__7.MoveNext()    at System.Linq.Buffer1..ctor(IEnumerable1 source)    at System.Linq.Enumerable.ToArray[TSource](IEnumerable1 source)
at Microsoft.Data.Entity.Design.OperationExecutor.OperationBase.<>c__DisplayClass4_0`1.b__0()
at Microsoft.Data.Entity.Design.OperationExecutor.OperationBase.Execute(Action action)
WRN: Assembly binding logging is turned OFF.
To enable assembly bind failure logging, set the registry value HKLM\Software\Microsoft\Fusion!EnableLog to 1.
Note: There is some performance penalty associated with assembly bind failure logging.
To turn this feature off, remove the registry value [HKLM\Software\Microsoft\Fusion!EnableLog].
Could not load file or assembly 'projectname' or one of its dependencies. An attempt was made to load a program with an incorrect format.

@utpal-patel which sample were you using? Can you also share Windows and VS version.

Stack trace included "Microsoft.Data.Entity" namespaces. I assume this means your project is using RC1. FYI we just released RC2. See https://docs.efproject.net/en/latest/miscellaneous/rc1-rc2-upgrade.html

On the following page :  https://docs.efproject.net/en/latest/platforms/aspnetcore/new-db.html#create-your-model

Locate the tools section and add the ef command as shown below

 "tools": {
    "Microsoft.EntityFrameworkCore.Tools": {
      "version": "1.0.0-preview1-final",
      "imports": [
        "portable-net45+win8+dnxcore50",
        "portable-net45+win8"
      ]
    },

the sample below is the wrong gist as it does not contain a reference to ef.

I can confirm that this isn't working. Running the commands from the command line still seems to work, but you can't use Add-Migration from the Package Manager Console.
dotnet ef migrations add InitialMigration

You would use Add-Migration InitialMigration in Package Manager Console. The dotnef ef commands are for use outside of Visual Studio.

Yes, I know, but Add-Migration InitialMigration isn't currently working in Package Manager Console. I included the alternate command line text as a "workaround", but my comment wasn't very clear.

Thanks @rowanmiller and @MaxxDelusional...
i was stuck so i decided other way to accomplish the task...
but i will check and reply soon...
Appreciate it!!

@rowanmiller, i am using windows 10 Pro (Build: 10586.318) and Visual studio 2015 Update 2

@MaxxDelusional

Add-Migration InitialMigration  isn't currently working in Package Manager Console.

Are you seeing the same System.BadImageFormatException as @utpal-patel ? If not, can you open a separate issue with details of the issue you are having as it is a different issue. Be sure to include your project.json file.

@utpal-patel is this a .NET Core project?

@rowanmiller it is windows universal application.

@utpal-patel thanks for the info. This isn't an issue we are currently aware of - we do have some architecture issues in .NET Core in RC2. Any chance you could share the project that reproduces the issue, so that we can debug it?

@rowanmiller i will do that by today end...hope it helps!!
Appreciate your efforts!!

@utpal-patel @rowanmiller what happened with this?  I am now hitting a similar issue when trying to add a migration.
Using startup project 'Procore'.
Using project 'Procore.DB'
Build started...
Build succeeded.
Using application base 'C:\Users\Allan\Source\Repos\uwp\src\Procore\bin\x64\Debug\'.
No configuration file found.
Using current directory 'C:\Users\Allan\Source\Repos\uwp\src\Procore\bin\x64\Debug\'.
Microsoft.EntityFrameworkCore.Design.OperationException: Could not load assembly 'Procore.DB'. Ensure it is referenced by the startup project 'Procore'. ---> System.BadImageFormatException: Could not load file or assembly 'Procore.DB' or one of its dependencies. An attempt was made to load a program with an incorrect format.```

@rowanmiller Sorry!! I was stucked with some work so could not able to submit the code...i will do ASAP.
@allanrsmith Could not able to figure it out yet!!
But primary solution may be update entity framework package...

add-migration : The term 'add-migration' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the
name, or if a path was included, verify that the path is correct and try again.
At line:1 char:1

add-migration

  + CategoryInfo          : ObjectNotFound: (add-migration:String) [], CommandNotFoundException
  + FullyQualifiedErrorId : CommandNotFoundException

Closing as these issues should be fixed now. There is guidance on getting tools to work in https://github.com/aspnet/EntityFramework/issues/7358. If you hit issues with this, please open an issue on the main EF repo (https://github.com/aspnet/EntityFramework). This repo is specific to the documentation.