Import mysql_connector version 0.8.1

Import-only

Since this is import-only, I am merging it even with the failures, as they're fixed in #196


Support Model Binding to JsonDocument and Response Serialisation from JsonDocument

AspNetCore version 3.0
Model Binding currently throws:
        [HttpPost]
        public IActionResult Post([FromBody] JsonDocument doc)
        {
            /// snip
        }

Response serialization does not treat JsonDocument well:
        [HttpGet]
        public IActionResult GetStuff()
        {
            JsonDocument doc = /// ... get data;

            Ok(doc);
        }

It outputs
{
    "RootElement": ...
}

Quite unexpected, this worked well with JObject.
Apologies, if this has been discussed previously.

@oliverjanik thanks for contacting us.
We believe this is a feature missing on the JSON Serializer. It will be better if you file this issue in the https://github.com/dotnet/corefx repository.
@ahsonkhan This might interest you.

You should be able to serialize \ deserialize a JsonElement instance:
[HttpPost]
public IActionResult Post([FromBody] JsonElement element)

..

return Ok(doc.RootElement);

We believe this is a feature missing on the JSON Serializer.

Yep, this is a known issue: https://github.com/dotnet/corefx/issues/42056
However, what @pranavkm mentioned (i.e. pass in doc.RootElement) will work as a workaround, since the JSON serializer does support JsonElement.

It will be better if you file this issue in the https://github.com/dotnet/corefx repository.

FYI, it should be filed in the https://github.com/dotnet/runtime repo now (see https://github.com/dotnet/corefx/issues/42733).

Thanks for all the pointers. It's bloody hard to find what repo to file issues in, unfortunately. It would be good if maintainers could "move" the issue instead of closing it.

It would be good if maintainers could "move" the issue instead of closing it.

I would have considered moving it if we didn't already have an existing issue.


Jaws cant read h1s when they are nested inside fieldsets - fieldset component

Jaws cant read heading tags when they are nested inside fieldsets, as detailed here: https://github.com/FreedomScientific/VFO-standards-support/issues/100
We had this come out in an accessibility audit, using ie11 & Jaws 2019.
I understand the html for the fieldset component is valid, and the issue is a known one with JAWs im not sure anything should be done. Just worth raising as we could change the fieldset component to avoid this issue for our users.

@Jagordon Thanks for flagging this. I'm assuming this refers to the legends as page headings pattern? We've previously investigated this and commented on the same Jaws issue. See https://github.com/alphagov/govuk-frontend/issues/1605#issuecomment-545484044:

Given that this is a known vendor issue and a recent regression (Jaws 17 and 18 are not impacted), we're not going to take further action now and I'm going to close the issue. If we get further feedback on this we'll reconsider the approach.

I'm going to close your issue as it's a duplicate of https://github.com/alphagov/govuk-frontend/issues/1605.
Thanks again for bringing this to our attention 👍

Ahh apologies for raising a duplicate issue 👍

No worries at all!


WebView removed from RN-0.61

Summary

Test Plan

What's required for testing (prerequisites)?
What are the steps to reproduce (after prerequisites)?
Compatibility

OS
Implemented

iOS
✅❌

Android
✅❌

Checklist

[ ] I have tested this on a device and a simulator
[ ] I added the documentation in README.md
[ ] I mentioned this change in CHANGELOG.md
[ ] I updated the typed files (TS and Flow)
[ ] I added a sample use of the API in the example project (example/App.js)

This is causing an error with react-native-web since they recently upgraded to RN-0.61 and this import was removed in that version of RN.


Improvement: Add Keyboard Shortcuts for Changing Paragraph Format

During text formatting mouse is used more as it should. It would be way more productive to use keyboard shortcuts for that task.
Missed keyboard shortcuts for changing paragraph formatting:

Header 1
Header 2
Header 3
Paragraph
Block-quote
Code Block
Inline Code

Just a suggestion, other key board shortcuts that would be nice are
[e]          switch to edit mode (especially useful when you scrolled all the way down on a long page and the edit button is all the way at the top of the page, extra points when edit mode starts at the location you scrolled to, instead of the top of the page)
[ctrl]+[s]   save and exit edit mode
[some key]   sync preview with current location of markdown editor
[ctrl]+[lmb] sync markdown editor with location (mouse click) of preview)

Just throwing this in as suggestion :)

Since the headers can already be controlled via [ctrl]+[1-4], how difficult would it be to expand that to include paragraph, block quote, code block and inline code with keys [5-8]?
If it's a priority issue, is there anything I can do to help? I'm not a developer but I have had some contact with PHP and Lavarel, so if it's not too complicated and if someone could point me at the right location, I could give it a try. If it results in usable code, we can merge it.

Seems the shortcuts for headers doesn't include Header Tiny which you would expect to be Control + 5?

As per the suggestion from @fredericmohr I've expanded the shortcuts across [Ctrl]+[1-9]. I've done this in both editors. Thanks @fredericmohr.
@stu177 I've altered the header shortcuts to match the formats dropdown. Ctrl+4 is now 'Header - Tiny'. Thanks for making me aware that tiny was not included.
I'll document the current shortcuts as part of sending out the next release (#452).
The work done here be in the next bugfix release, v0.17.4, due in the next couple of days.


Setup testing framework

We also want this to run automatically in a way that makes it harder to let failing tests slip through into master.


"nan" value of average loss when training using LibriSpeech corpus

Hi~@SeanNaren, I just get a "nan" value of average loss when training using LibriSpeech corpus:

I think the problem comes from indexer:nxt_inds() in Loader.lua. When:
    self.lmdb_size = self.cnt + self.batch_size - 1
then:
    self.cnt = self.batch_size - (self.lmdb_size - self.cnt) = 1
the following code will cause unexpected issues since  self.cnt - 1 = 0:
for i = 1, self.cnt - 1 do
table.insert(inds, i)
end
It's that right?

LMDB should throw out an error if you try to index something that doesn't have a pair in the database for, so I'm not entirely sure that's the issue.
I'll be implementing grad norm into the feval function which may help handle the explosion in gradients that I think is occuring, however this may be only one step in the fix.

Thank you. I think you are right since fixing the code I mentioned above prove to be useless, the problem still occurs after a certain amount of epochs.


How to take snapshot test after animation

Hey guys,
I need do some snapshot test after my UIView animation finished, and these tests should run into several devices automatically.
I noticed there is a Async<UIImage> in source code, and I tried to extension Snapshotting and implemented my image methond:
extension Snapshotting where Value == UIViewController, Format == UIImage {

  public static func image(on config: SnapshotTesting.ViewImageConfig, precision: Float = 1, size: CGSize? = nil, traits: UITraitCollection = .init(), isAsync: Bool) -> Snapshotting {
      return Snapshotting(pathExtension: "png", diffing: .image, asyncSnapshot: { vc in
          Async<UIImage> {callback in
            DispatchQueue.main.asyncAfter(deadline: .now() + 1) {
               UIGraphicsBeginImageContextWithOptions(vc.view.bounds.size, false, UIScreen.main.scale)

                   // Draw view in that context
                   vc.view.drawHierarchy(in: vc.view.bounds, afterScreenUpdates: true)

                   // And finally, get image
                   let image = UIGraphicsGetImageFromCurrentImageContext()
                   UIGraphicsEndImageContext()
                callback(image!)
            }
          }
        })
  }
}

In this code, I can't re-use the traits config ,so I always saved the snapshots from specific running simulator.
Any Ideas?
I think you can define this as a public method:
snapshotView(
          config: .init(safeArea: .zero, size: size ?? view.frame.size, traits: .init()),
          drawHierarchyInKeyWindow: drawHierarchyInKeyWindow,
          traits: traits,
          view: view,
          viewController: .init()
        )

@Irelylnny not sure if it fits your specific needs but there's a .wait strategy which will delay the snapshot, letting your view controller perform the animations:
https://github.com/pointfreeco/swift-snapshot-testing/commit/69d029ca721fed87c8a655377716c69ebe985e4f
Also, there's a related conversation on #173.

Closing this as a dupe of #173. We'd like to make the VC strategy a bit more flexible in the future, but haven't had time to expose such hooks, sorry!


Mark database connection as dead even when disconnecting fails

The jdbc input pluging recently got support for automatically reconnecting when a database connection is lost. In this case it tries to cleanly close the old connection by calling disconnect, then setting its @database reference to nil.
@database being nil is then used as an indication that a new connection needs to be opened.
Calling disconnect leads to a call to java.sql.Connection.close() which may throw an SQLException.
In that case @database remains a reference to the broken connection and we try to reuse that.
This PR adds an exception handler to ensure that the database connection is marked dead even when disconnect throws an exception.

I do like your patch.
In order to properly close #220, please can you add the exception to the logging statement on line 173 of the same file?
@logger.warn("Failed test_connection.", :exception => e)

Thank you @guyboertje. I will do so tomorrow. After that, I´ll be on vacation until Sep 5.
Btw.: the elastic contributor license agreement page was broken for me earlier. It seems to work now, so I´ll take care about that too (although the patch is so trivial that copyright does not apply anyway)

What email did you sign the Agreement with? I think it needs to be the one attached to your Github account.
You should also bump the patch part of the version number in the .gemspec file and add a section to the CHANGELOG.md file.

no address at all. After choosing "individual contributor" I was forwarded to an empty page showing just the generic elastic links. Maybe just a browser hickup.
ok, will do as you say. Yay, finally learning ruby dev practices 101 ;-)

Hi @franklauterwald, we have found your signature in our records, but it seems like you have signed with a different e-mail than the one used in yout Git commit. Can you please add both of these e-mails into your Github profile (they can be hidden), so we can match your e-mails to your Github profile?

Hi @karmi, thanks for the reminder. Embarrassingly, one of my machines still had the mail address of a former employer.
I have amended the commits and force-pushed, so I hope all is well now.


Question: location for compiled libraries

I've successfully compiled FFmpeg for Windows 10 x86 and x64 via the compilation guide for WinRT, but I can't seem to figure out where to put the compiled library so I can actually build the FFmpegInterop project (VS 2015 spits out a lot of errors along the lines of "Cannot open include file: 'libavformat/avformat.h': No such file or directory").
Here's where I currently have FFmpeg:
FFmpegInterop\FFmpegSample\FFmpegInterop\Win10\FFmpeg\Build\

Inside of that Build directory at the end of the above path are the following directories (each copied directly from the Build directory generated during the compilation process):
Win32
x64

I'm relatively new to Windows development and library compilation, so I'm sure this is just a simple matter of placing the compiled library in the right place (and making sure its directories are named appropriately). I didn't find anything in this repo's readme, the compilation instructions, or the Windows blog post about it. I have done some Windows app development in the past (Windows 8.x, and now Windows 10) with HTML/JS, but haven't messed around much with WinRT components until now.
Any guidance would be appreciated! Unless I've somehow missed it in all my reading, this might be something worth adding to the readme.

Hi,
You should check the ffmpeginterop project settings and look at compiler and linker settings. There will be a relative (to SolutionDir) path. I had to remove one "../"(back directory).
I'm writing from phone. Sorry for any typo.
-----Исходное сообщение-----
От: "Aaron Mertzenich"<EMAIL_ADDRESS>Отправлено: 14.06.2015 3:43
Кому: "Microsoft/FFmpegInterop"<EMAIL_ADDRESS>Тема: [FFmpegInterop] Question: location for compiled libraries (#10)
I've successfully compiled FFmpeg for Windows 10 x86 and x64 via the compilation guide for WinRT, but I can't seem to figure out where to put the compiled library so I can actually build the FFmpegInterop project (VS 2015 spits out a lot of errors along the lines of "Cannot open include file: 'libavformat/avformat.h': No such file or directory").
Here's where I currently have FFmpeg:
FFmpegInterop\FFmpegSample\FFmpegInterop\Win10\FFmpeg\Build
Inside of that Build directory at the end of the above path are the following directories (each copied directly from the Build directory generated during the compilation process):
Win32
x64
I'm relatively new to Windows development and library compilation, so I'm sure this is just a simple matter of placing the compiled library in the right place (and making sure its directories are named appropriately). I didn't find anything in this repo's readme, the compilation instructions, or the Windows blog post about it. I have done some Windows app development in the past (Windows 8.x, and now Windows 10) with HTML/JS, but haven't messed around much with WinRT components until now.
Any guidance would be appreciated! Unless I've somehow missed it in all my reading, this might be something worth adding to the readme.
—
Reply to this email directly or view it on GitHub.

Thanks for the help -- this fixed the problem. I had inadvertently included an extra backslash after $(SolutionDir), which was incorrectly resolved when VS parsed out the macro. Everything is now building properly for me.


Calling Schedulers with Schedules

The current  code creates a Schedule during the initialization. I will be removing the creation of a Schedule from the __init__ and adding a Schedule as a required argument for the __call__ (which will then require a list of ObservingBlocks and a Schedule). After the change it will be possible to input a Schedule that has already be added to into the Schedulers.
Using a partially filled Schedule is not advised since neither Scheduler can accommodate it at this time. Adding this functionality is a future goal.

I think this was addressed by the above mentioned PRs.


Radio IRQ during EEPROM write

The interrupts generated by LPUART sometimes get lost during heavy EEPROM write activity. Is that the case also for the interrupts generated by the radio? If yes, is this a problem? Do we need to deal with this?

There was a problem with IRQ-based data reception on the LPUART1 interface. During periods of heavy EEPROM write activity, IRQs are blocked. By the time the host has had a chance to register the IRQ, LPUART1's single-byte register for received data was overwritten. Thus, we lost AT command characters during periods of heavy EEPROM write activity.
The SX1276 radio does not seem to have the same kind of problem. The radio has four IRQ lines connected to the MCU. Those IRQs indicate events such as TX done, RX done, or RX timeout [1]. Once an IRQ has been registered by the MCU, it needs to be cleared in the radio via its SPI interface. If the IRQ is delayed during EEPROM activity, the MCU will simply register the events mentioned above later than necessary, but no data will be lost since those IRQs are not related to any data stored in the radio's status registers.
One place where delayed radio IRQs might be problematic is the RX window timing. LoRaWAN specifies two RX windows where the node is expected to listen for downlink messages. The timing of the windows is derived from the time of the TX done event. If the MCU registers the TX done event late, it will start the first RX window late, potentially missing the downlink message.
Thus, we should check that the radio's IRQs are not blocked/delayed until at least the TX done IRQ. This means no data should be written into the EEPROM while there is an ongoing uplink transmission in progress.
[1] Semtech, "MCU Requirements for LoRaWAN."

The SX1276 transceiver provides six GPIO pins DIO0 through DIO5 that can be configured to generate interrupts. In the Type ABZ module only pins DIO0-DIO3 are connected to the STM32 MCU. The pins are mapped as follows:

DIO0 -> GPIO B 4 -> RxDone / TxDone / RxError(CRC error)
DIO1 -> GPIO B 1 -> RxTimeout
DIO2 -> GPIO B 0 -> FhssChangeChannel
DIO3 -> GPIO C 13 -> CadDone
DIO4 -> GPIO A 5 -> PreambleDetected(FSK only)
DIO5 -> GPIO A 4 -> N/A

The interrupts are routed to the core via the EXTI peripheral which wakes the MCU up from the low-power Stop mode. The MAC clears the interrupt by writing into the SX1276's SPI registers. In the NVIC the SX1276-generated interrupts have a priority of 0, the same priority as LPUART1, DMA, and RTC interrupts, and thus won't get preempted.
Out of the above-mentioned interrupts, only TxDone (DIO0) is time-critical. Since the time offsets of RX1 and RX2 windows depend on the time of TxDone, the MAC must timestamp the arrival of the TxDone interrupt as quickly as possible. If the handling of this interrupt ends up being delayed, e.g., during a period of heavy EEPROM write activity, the RX1 and RX2 offsets could end up being calculated incorrectly. Since LoRaMAC does not schedule NVM updates until after the RX2 window, the interrupt is safe with respect to EEPROM write activity.


Translate to spanish latest docker pull issue

⚠ Please verify that this bug has NOT been raised before.

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

🛡 Security Policy

[X] I agree to have read this project Security Policy

Description
/add-status-page:

/manage-status-page:

/status/exmple1:

👟 Reproduction steps
pull to latest version of docker image
👀 Expected behavior
all strings translated to spanish
😓 Actual Behavior
that strings not translated to spanish
🐻 Uptime-Kuma Version
Latest
💻 Operating System and Arch
Ubuntu 20
🌐 Browser
Chrome
🐋 Docker Version
Docker 20
🟩 NodeJS Version
No response
📝 Relevant log output
No response

This is likely due to no translations being present in the spanish language file. If you speak spanish you could perhaps add some of the translations. For more info about this see https://github.com/louislam/uptime-kuma/tree/master/src/languages

How can add that strings?
El mié, 6 de jul. de 2022, 5:19 p. m., Matthew Nickson <
@.***> escribió:

This is likely due to no translations being present in the spanish
language file. If you speak spanish you could perhaps add some of the
translations. For more info about this see
https://github.com/louislam/uptime-kuma/tree/master/src/languages
—
Reply to this email directly, view it on GitHub
https://github.com/louislam/uptime-kuma/issues/1872#issuecomment-1176806725,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AADIWFG7QH3XKWT7MBBKAJTVSYA6HANCNFSM5225TXXA
.
You are receiving this because you authored the thread.Message ID:
@.***>

First look in the en.js file for the translation you wish to add and then copy that over to the spanish file with the translation. For example, if I wanted to translate Services, I would first look in en.js and find the following line:
https://github.com/louislam/uptime-kuma/blob/d29955f3bad013978bec9c4eb8f4aefc94fdeaba/src/languages/en.js#L355
I would then check in es-ES.js first that the translation has not already been copied across. If it has you can update it. If it hasnt then, in es-ES.js I would add the following
Services: "<spanish translation>",

How can deploy in docker?
El mié, 6 de jul. de 2022, 5:39 p. m., Matthew Nickson <
@.***> escribió:

First look in the en.js file for the translation you wish to add and then
copy that over to the spanish file with the translation. For example, if I
wanted to translate Services, I would first look in en.js and find the
following line:
https://github.com/louislam/uptime-kuma/blob/d29955f3bad013978bec9c4eb8f4aefc94fdeaba/src/languages/en.js#L355
I would then check in es-ES.js first that the translation has not already
been copied across. If it has you can update it. If it hasnt then, in
es-ES.js I would add the following
Services: "",
—
Reply to this email directly, view it on GitHub
https://github.com/louislam/uptime-kuma/issues/1872#issuecomment-1176823657,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AADIWFDPA4HI4ELULG33PKTVSYDJJANCNFSM5225TXXA
.
You are receiving this because you authored the thread.Message ID:
@.***>

For a docker install see https://github.com/louislam/uptime-kuma/wiki/🔧-How-to-Install#-docker
Note, this will not include any translations you make. You would first have to submit a PR and wait for the next release for any translations to be included

https://github.com/louislam/uptime-kuma/commit/011d6f40beb720f6360a1aedd53d3a50a4000fc6
ok pls tell me if is ok, and merge

Tech me for how to deploy uptime Kuma in docker image, pls
El mié, 6 de jul. de 2022, 5:51 p. m., Matthew Nickson <
@.***> escribió:

For a docker install see
https://github.com/louislam/uptime-kuma/wiki/🔧-How-to-Install#-docker
Note, this will not include any translations you make. You would first
have to submit a PR and wait for the next release for any translations to
be included
—
Reply to this email directly, view it on GitHub
https://github.com/louislam/uptime-kuma/issues/1872#issuecomment-1176832926,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AADIWFENTLUG6SSX3YHVBALVSYEXTANCNFSM5225TXXA
.
You are receiving this because you authored the thread.Message ID:
@.***>


language and menu not overlap

I'm always frustrated when i open menu and click on language select then not show Language list.

Hey Can i work on this ?

@kant @tuxdna @slightlyoff

/available

claim

This issue is available for contribution.
Please reply "/claim" (without quotes) if you wish to work on this issue.

/claim

@shyamkumaryadav  Can you please describe more about it? I mean what is the actual issue?

@abhisharkjangir here is

@JunaidBabu Added PR, please review...


{Packaging/MSI} Use embeddable python for MSI

Description

Use embeddable Python + pip to reduce the size of the bundled Python in MSI.
Add a script to test MSI package. The test is not added to CI as it needs Admin Permission to set up(#9270). For now it can be run on a local machine when there's major changes in MSI packaging.

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.

Packaging/MSI

Packaging/MSI


Add support for a unix:// destination in the cli

It seems that the scope executable doesn't support a unix:// dest right now. Now that we support unix sockets in the library, we should enable unix destinations for all (-c , -e , -m) destinations.
We will need to update the regex in cli/run/scopeconfig.go.
As it stands it looks like this:
 		//     "relative/path"
		//     "file://another/relative/path"
		//     "/absolute/path"
		//     "file:///another/absolute/path"
		//     "tcp://host:port"
		//     "udp://host:port"
		//     "tls://host:port"
		//     "host:port" (assume tls)
...
		m := regexp.MustCompile("^(?:(?i)(file|tcp|udp|tls)://)?([^:]+)(?::(\\d+))?$").FindAllStringSubmatch(dest, -1)

Issue address in #682.
QA Instructions:
Scenario 1:
Goal: Verify that Scope CLI accepts the UNIX socket as a parameter
docker run --rm -it cribl/scope:<VERSION_ID>
scope run -e unix://tmp/abstest ls

Observe that you don't see the message like: Invalid dest: unix://tmp/abstest
Scenario 2:
Goal: Verify that metrics communication path based on abstract UNIX socket in scope works fine
Terminal 1 - start listening server on abstract UNIX socket
docker run --rm -it cribl/scope:<VERSION_ID>
apt update && apt install -y socat
socat - ABSTRACT-LISTEN:abstest

Terminal 2 - start scoping process and pass metrics to server created on Terminal 1
scope run -m unix://@abstest ls

Observe that metrics from the scoped process are present on Terminal 1.
Scenario 3:
Goal: Verify that event communication path based on file path UNIX socket in scope works fine
Terminal 1 - start listening server on file path UNIX socket
docker run --rm -it cribl/scope:<VERSION_ID>
apt update && apt install -y socat
socat - UNIX-LISTEN:/tmp/abstest

Terminal 2 - start scoping top process and pass events to server created on Terminal 1
scope run -e unix:///tmp/abstest top

Observe that events from the scoped process are present on Terminal 1.

part 3 (and 1 & 2)

part 4

part 5

part 6


chore(onboarding): add andyatmiami to organization_members.yaml

Description

adding myself as part of new hire onboarding

accidentally opened - please ignore


[WIP] Reset dataset programatically

This introduces an API feature which allows the user to reset, refresh or setReadOffset on the dataset both from the handlebars template, as well as from a controller / route.
Fixes #34

Note: This PR only provides an API to set the readOffset on the dataset explicitly. In order to reset all fetched records in the dataset, I refer you to https://github.com/thefrontside/ember-impagination/issues/34#issuecomment-169219312.
TLDR: If you want to fully reset the impagination-dataset to an empty state, you have to pass it a new fetch function.

Reasons for resetting or refreshing a dataset:

Since the dataset only resets when {{impagination-dataset}} parameters change, there is no clear way to reset the dataset. When we want to fetch data from the backend with a query which does not rerender the route, we must manually fire a dataset reset/refresh.

To comply with a planned feature to filter-records on the frontend, we will want to manually refresh the dataset to apply filters on records which may have changed. Since filtering data on the frontend does not rerender the route, we must manually fire a reset/refresh.

New API features:
actions: {
  reset: function()    // sets the dataset to readOffset `0`
  refresh: function() // sets the dataset to the currentReadOffset
  setReadOffset: function(offset) // sets the dataset to passed-in `offset`
}

Refreshing Dataset Examples
In this example we refresh the dataset upon updated search queries through the {{search-pane}} component.
from child components
{{#impagination-dataset fetch=myFetch as |dataset|}}
  {{#search-pane search=(action "performSearch") on-search-results=(action "reset" target=dataset)}}
      {{#ember-collection items=dataset as |record|}}
        {{chat-search-result result=record}}
      {{/ember-collection}}
  {{/search-pane}}
{{/impagination-dataset}}

from parent route
We use the on-observe action, which fires whenever there exists a new dataset to observe. We can then perform actions on the new dataset, which are PASSED-UP TO THE ROUTE, along with the dataset.
{{#impagination-dataset fetch=myFetch on-observe=(action "observeDataset") as |dataset|}}
  {{#search-pane search=(action "performSearch")}}
      {{#ember-collection items=dataset as |record|}}
        {{chat-search-result result=record}}
      {{/ember-collection}}
  {{/search-pane}}
{{/impagination-dataset}}

    observeDataset: function(dataset, actions) { // dataset and actions are passed-up
        this.set('dataset', dataset);
        this.set('actions', actions);
    },
   _refreshDataset() {
        let refresh = this.get('actions.refresh');
        refresh.call(this.get('dataset'))
    }

TODO / WIP:
[x] refresh should fire the observer
[x] setReadOffset must fire observer when we pass-in the current readOffset of the dataset
[ ] Write tests for firing actions from child components

Confused as to why this build is failing. Nothing has really changed between 28a1889
and	 79dc17d

Closing in Favor of #130


Unable to download custom builds with hugo plugin included

(Are you asking for help with using Caddy? Please use our forum instead: https://forum.caddyserver.com. If you are filing a bug report, please answer the following questions. If your issue is not a bug report, you do not need to use this template. Either way, please consider donating if we've helped you. Thanks!)
1. What version of Caddy are you running (caddy -version)?
0.9.4
2. What are you trying to do?
download the latest version with the many plugins including hugo (Linux 64bit)
3. What is your entire Caddyfile?
NA
4.
NA
5. What did you expect to see?
I just want the latest version.
6. What did you see instead (give full error messages and/or log)?
Error:

Sorry about that. You can try again or download Caddy core from our backup site (without any extra features).

7. How can someone who is starting from scratch reproduce this behavior as minimally as possible?
Just go try to make a build, select Hugo and try linux 64 bit, I only tried that platform
apologies if this is the wrong place. I assume the hugo plugin has an issue with the latest version of caddy but it is breaking builds of caddy on the site.

Yes, the hugo plugin is broken right now. /cc @hacdias. This is not a caddy issue so I'm closing this, but we'll get it fixed in the next day or two. Sorry about that.


Fix deserialization of included resources.

Resource creation expects relationships to be not null, and included resources come without relationships. Added an empty default
Couldn't find a way to replicate this in the tests, though. At least the suite passes with the change, and my app is running smoothly with it, for what it's worth.
If you'd like to take a look, it'd break on this this route
Here's a sample payload it fetches:
{
    "data": [
        {
            "attributes": {
                "body": "trest",
                "title": "test"
            },
            "id": "55cb9c464f6c694a69000000",
            "links": {
                "self": "http://localhost:3000/proposals/55cb9c464f6c694a69000000"
            },
            "relationships": {
                "author": {
                    "data": {
                        "id": "55b4e6fe4f6c69b313000000",
                        "type": "authors"
                    },
                    "links": {
                        "related": "http://localhost:3000/proposals/55cb9c464f6c694a69000000/author",
                        "self": "http://localhost:3000/proposals/55cb9c464f6c694a69000000/relationships/author"
                    }
                },
                "suggestions": {
                    "links": {
                        "related": "http://localhost:3000/proposals/55cb9c464f6c694a69000000/suggestions",
                        "self": "http://localhost:3000/proposals/55cb9c464f6c694a69000000/relationships/suggestions"
                    }
                },
                "supports": {
                    "links": {
                        "related": "http://localhost:3000/proposals/55cb9c464f6c694a69000000/supports",
                        "self": "http://localhost:3000/proposals/55cb9c464f6c694a69000000/relationships/supports"
                    }
                }
            },
            "type": "proposals"
        }
    ],
    "included": [
        {
            "attributes": {
                "name": "Oliver Azevedo Barnes"
            },
            "id": "55b4e6fe4f6c69b313000000",
            "links": {
                "self": "http://localhost:3000/authors/55b4e6fe4f6c69b313000000"
            },
            "type": "authors"
        }
    ]

I'll take a look tomorrow, thanks.

@oliverbarnes the test for the serializer that includes a resource issues this payload https://github.com/pixelhandler/ember-jsonapi-resources/blob/master/fixtures/api/posts/1.json here is the test https://github.com/pixelhandler/ember-jsonapi-resources/blob/master/tests/unit/serializers/application-test.js#L138-L168
So we'd need to create a test that has no relationships in the included document. So it looks like your example has a proposal that included a related author (but the author doesn't have any relationships). That example relation would need to be simulated in the test.
the test would need:
[
        {
            "attributes": {
                "name": "Oliver Azevedo Barnes"
            },
            "id": "55b4e6fe4f6c69b313000000",
            "links": {
                "self": "http://localhost:3000/authors/55b4e6fe4f6c69b313000000"
            },
            "type": "authors"
        }
    ]

…as the mockIncluded  value that is payload passed into serializer.deserializeIncluded(mockIncluded, { headers:{} });

@oliverbarnes I pushed up a branch which I think may fix the root of the issue, see: https://github.com/oliverbarnes/ember-jsonapi-resources/compare/fix-relationship-setup-for-included-resource...pixelhandler:fix-relationship-setup-for-included-resource

This should be fixed in v0.5.3

awesome, thanks @pixelhandler. I'll test it out and post back if anything comes up


Using morph with a document fragment appears to do a full replace instead of a morph

Hello all! 👋
This is my first time in CableReady land, so please excuse my ignorance as I try to explain the issue we're running into. 🙏
We're using CableReady's morph functionality. We're also using a ViewComponent that we want to re-render multiple times. It works pretty much flawlessly for us!
cable_ready[channel].morph(
  selector: '#div-to-morph',
  html: ApplicationController.render(component)
)

👍
Then, we encountered a case where we need to use a permanent attribute name. We have an image that we don't want to re-render each time. We updated our code to the following:
cable_ready[channel].morph(
  selector: '#div-to-morph',
  html: ApplicationController.render(component),
  permanent_attribute_name: 'data-preview-permanent'
)

<div id="div-to-morph" class="<%= classes %>">
  <div data-preview-permanent>
    ... an image that should persist morphs...
  </div>
</div>

If we turn off browser caching, the image flickers (as it reloads) on each new morph call. This isn't caught when browser caching is on (unless you're using Safari, but that's another story for another time).
My co-worker @kylefox looked into CableReady and Morphom and learned that this does not happen if you change the morphdom call in CableReady to use template.innerHTML instead of template.content. (This change does cause issues in StimulusReflex, though)
Some deeper digging in Morphdom shows that when morphdom is given a DocumentFragment, it appears to do a full replace, versus morphing/diffing.
I believe this is not an issue when using childrenOnly.
However, in our case- we don't use childrenOnly, we need the entire component morphed, including the parent.
From our understanding, morph currently only diffs if you're using children_only: true otherwise, it appears to do a full replace.

@kylefox put together a sample application with a walkthrough video to help support our findings.
I find this difficult to explain properly given I don't fully understand all the implications. However, I'm more than glad to help explain more/hop on a Zoom call to discuss further.
If we're mis-understanding the library, my apologies as well!
Thanks for all your hard work!

Also, did you know this was a thing? https://github.com/hopsoft/cable_ready/pull/58

Sorry for the delay @leastbad — took a while for me and @jasoncharnes to sync up on this issue again.

@hopsoft has never let me patch morphdom, no matter how much I begged.

Genuinely curious — why work around bugs in dependencies instead of fixing bugs in dependencies?
I did end up opening a PR on morphdom to see if that project is open to patching the behavior: https://github.com/patrick-steele-idem/morphdom/pull/206 In the meantime, we've been using morphdom directly without CableReady to get around this issue.

Are you suggesting that option 2 above would not solve your concern?

Option #2 would technically work, but it seems unnecessary to add yet another option. Especially because it feels like this is a scenario that should Just Work™ out of the box.

Also, did you know this was a thing? #58

I didn't! I'll take a closer look at it.

They have to be open to fixing those bugs, or acknowledge them as bugs. That project has been highly conservative wrt accepting patches for new features; what you're proposing is a breaking change, even if we successfully argue that it's a (very) positive one.
If the upstream dependency won't change, your options are:

fork it, which @hopsoft didn't go for
do nothing
find clever ways to do what you need to do anyhow

None of which is a revelation, but sometimes you're between a rock and a hard place.
What is your plan for following-up on this, in terms of reaching out to the core team and how long you plan to give them to fix it before you evaluate one of the three options above?
I want to be clear and say that I want them to accept your PR very much, but I am skeptical that they will.

Thanks @leastbad — that all makes sense. I guess we didn't realize morphdom was such an inactive project 😕

What is your plan for following-up on this, in terms of reaching out to the core team and how long you plan to give them to fix it before you evaluate one of the three options above?

Good question. We'll probably give it a week or two to see if anything develops on the morphdom PR. If nothing happens (and I'm getting a bit skeptical myself) then I'd love to explore an option in CableReady that just works automatically — something like what you proposed in option (3) or what was suggested in #58.

I don't know if it's inactive or just highly change resistant. I empathize because it's not clear Patrick knew he was creating critical infrastructure. When you're talking about subtle behaviour changes, you have to weigh them against breaking (potentially thousands of) production apps in unexpected ways.
Although, I thought that's what SemVer was supposed to fix...

For the record, I'm completely in favor of submitting patches to upstream dependencies. I'm just opposed to maintaining a bespoke fork of those dependencies.
I agree that is something that should simply work out of the box, so option 3 sounds like a reasonable path to take. I'll spend some time experimenting with #58 as it seems like it may address this issue. If you happen to test #58 yourself, please report any findings on this issue. 🙏

Based on @joshleblanc's PR #58 it sounds like he's tested it with desirable outcomes:

This change results in my test project successfully rendering with children_only set to true or false, always respecting the permanent attribute.

That sounds pretty darn good to me, given that childrenOnly = true remains the default. This is only a breaking change for people using childrenOnly = false, with theoretically very positive outcomes for them.
I am trying hard to think of a downside to just accepting #58.

It appears that #58 fixes our issue, but to be honest I don't fully understand why there needs to be a conditional. From what I can tell, morphdom shouldn't be passed a DocumentFragment as the second argument in the first place, because it never performs a diff anyway 🤷

It's been awhile, but I'm pretty sure I made it a conditional because I didn't want to break anything unintentionally. So it would behave as it does in all cases except childrenOnly

I'm going to close this out in favor of #58


Content-Type support other than application/json

pyswagger requires swagger operation consume and produce in application/json format. To support other content-type (application/xml, application/x-protobuf, etc.), I draft a commit.
Here is my usage:
class XmlCodec:
    def marshal(self, _type, _format, value):
        return '<?xml version="1.0" encoding="UTF-8" ?>' + dicttoxml.dicttoxml(value, root=False, attr_type=False)

    def unmarshal(self, _type, _format, data):
        return xmltodict.parse(data)

def _create_mime_codec():
    mime_codec = MimeCodec()
    xmlCodec = XmlCodec()
    for _type in ['application', 'text']:
        mime_codec.register('%s/xml' % _type, xmlCodec)
    return mime_codec

_mime_codec = _create_mime_codec()

app = SwaggerApp.load(filepath, mime_codec=_mime_codec)
client = Client()
op = app.op['op']
pet_Tom=dict(id=1, name='Tom', photoUrls=['http://test'])
# use default/first consume/produce
client.request(op(body=pet_Tom))
# consume 'application/xml'
client.request(op('application/xml', body=pet_Tom))
# consume 'application/xml', produce 'application/json'
client.request(op('application/xml', 'application/json', body=pet_Tom))

This commit is still a draft, I'll add test case after review feedback.

Yep, there is no way for users to send/receive in MIME format other than 'application/json'. To make it works, lots of things need to be done.
Here is my review and suggestion of your works:

I would like to keep Operation.__call__ accepting **kwargs only, because when every time Swagger has a new version, this part would be reworked. Keep it simple make rework easier. To pass 'preferred' MIME format, you could add a property for SwaggerRequest, and a parameter for SwaggerRequest.prepare to pass them. The usage would be similar to this:

pet_Tom=dict(id=1, name='Tom', photoUrls=['http://test'])
req, resp = op(body=pet_Tom)

# [0] my sending format, [1] my preferred response format in response
req.mime = ('application/xml', 'application/json')
client.request((req, resp),)

The 'prepare' function would have two more parameter: 'request_mime', 'response_mime'(for response).

The 'MimeCodec' could be patched to Operation object (check pyswagger.scanner.v2_0.patch_obj, I patched prim_factory to each Operation object), so SwaggerRequest could access it via self.__op.
SwaggerResponse.apply_with need to take MIME format in header section into consideration, too.

I would stay away from internet for a few days, if you have any PR, I will review them next Friday (or later).

Got it, thanks for telling me this.

Pull request is updated.

keep Operation.call accepting **kwargs only

Done

The 'MimeCodec' could be patched to Operation object

This is exactly what I did in original pull request

SwaggerResponse.apply_with need to take MIME format in header section into consideration, too

I think it's already done in my original pull request

Thanks for your works.
The relation between formats of data types:
user-input -> prim_factory -> primitives for pyswagger (abbreviated as pyprim) -> marshal -> json/xml
The correct procedure of unmarshal should be:
xml/json -> unmarshal -> user-input -> prim_factory -> pyprim
However, I didn’t follow this “expected” design and just make pyprim accept json as string-buffer.
ex.
pyswagger.primtives._model.Model.apply_with
pyswagger.primtives._model.Array.apply_with
Therefore, it works in pyswagger.io.SwaggerResponse.apply_with, because pyprim accept json string. But it’s not a correct design.
Here is the right design:

those ‘json.load’ in Array/Model should be removed
in pyswagger.io.SwaggerResponse.apply_with, when we encounter a ‘body’, this string should go through MIME codec, generate a correct input for prim_factory, and then send them to prim if necessary.

it seems really messy in io-related code, and I can’t predict what would go wrong when reworking. So these are the follow-up options:

option#1 is I merge your works to master, and I will follow your design to make things right.
option#2 is let you finish these rework, and I will peer review your work.

What do you think? and thanks for your work again.

Thanks for your feedback. I would prefer option#2, since I just start learning Python and I need some practice :)

Ok, let's fulfill missing pieces of this project.

Hi, here is an issue related to this PR, I would start fix that issue next Monday, if you have any progress on this case, please let me know.

Sorry for the late response, a series of things happened and I'm on vacation now, will update the pull request around Feb. 2.

Hi, I'm very appreciate for your work, it's really nice to see things still going on. Before you proceeding, make sure to rebase to current code base (maybe resubmit a PR if possible)

Hi liao, I've updated the pull request (PR is reused since the update is base on original code change), please help to review.

Hi, it looks great at the first sight, I will review it more carefully later today, well done and thanks.

fairly reasonable, code is updated.

Hey, I saw Taiwan earthquake news today, hope everything goes well with you.

For the encoding problem, I have to confess that I take the easiest way to deal with it. And it should be a good timing to take care of it now. I''ll open an issue for discussion and a proposal for dealing this later.


Non native speakers 165

This PR adds the enhancement when a patient is a non-native English speaker, that patient will have a foreign place of birth, #165
How it works:
A reference file of ethnicities to cities should be created.  Format is:
{"ethnicity1": ["city1", "city2", ... "cityN"],
"ethnicity2": ["city1", "city2", ... "cityN"],
...
"ethnicityN": ["city1", "city2", ... "cityN"]}
File location can be declared in the synthea.properties file with the "generate.geography.foreign.birthplace.default_file" flag.
During the LifecycleModule, when a non-english first language is found instead of calling Location.randomCityName() we instead call Location.randomCityNameByEthnicity() which references the previously mentioned json file containing maps from ethnicities to cities.  Once the list of cities is accessed (based on the patient's ethnicity) a city is chosen based on the patient's assigned random.  If for any reason a city cannot be chosen (no cities for an ethnicity, ethnicity not contained in the file, etc) the method falls back to choosing a city from Location.randomCityName()
Caveats:

I did very little city research, simply grabbing a list of the 5 most populous cities in each "region" and using those locations in the src/main/resources/foreign_birthplace.json file included in this PR.  - Additionally the Location.randomCityNameByEthnicity() method does not do any selection based on population size like Location.randomCityName() does, mainly because I don't have access (or the time unfortunately) to put together an exhaustive list of world cities (sorry!).
Currently it's possible in regions that have multiple main languages for a patient to have a birth city where the language isn't the official language.  For example it would be possible for a person with a south_american ethnicity and a first_language of Spanish, but a birth city of Rio de Janerio (where the Official language is Portuguese).  While this is certainly a possibility, it seems more likely that patient would have a different birth city.  Future enhancements could target this area of functionality.

Commits:

Adds multiple json files to support a limited foreign birthplace
Updates the Lifecycle.birth() to pick a birth location based on the Person's defined first language
Updates Location to be able to pull in a json file for foreign birthplaces
Adds a method to get a random city name by ethnicity

This is super cool.

OK, so I tested this by generating 100 people in Texas.
I got an Asian man who speaks Chinese and was born in Chongqing. Great!
Except, it shows up in FHIR as Chongqing, Texas, US. So, you probably could add attributes for birthplace state/country.
Also, his name is Everett935 Streich926, which makes no sense, but one step at a time...
Example:
{
        "resourceType": "Patient",
        "id": "2d015b7e-6ecc-45b7-819d-de630a555264",
        "text": {
          "status": "generated",
          "div": "
Generated by Synthea.Version identifier: v2.2.0-49-g05bf356c\n .   Person seed:<PHONE_NUMBER>992721840  Population seed:<PHONE_NUMBER>361
"
        },
        "extension": [
          {
            "url": "http://hl7.org/fhir/us/core/StructureDefinition/us-core-race",
            "extension": [
              {
                "url": "ombCategory",
                "valueCoding": {
                  "system": "urn:oid:2.16.840.1.113883.6.238",
                  "code": "2028-9",
                  "display": "Asian"
                }
              },
              {
                "url": "text",
                "valueString": "Asian"
              }
            ]
          },
          {
            "url": "http://hl7.org/fhir/us/core/StructureDefinition/us-core-ethnicity",
            "extension": [
              {
                "url": "ombCategory",
                "valueCoding": {
                  "system": "urn:oid:2.16.840.1.113883.6.238",
                  "code": "2186-5",
                  "display": "Not Hispanic or Latino"
                }
              },
              {
                "url": "text",
                "valueString": "Not Hispanic or Latino"
              }
            ]
          },
          {
            "url": "http://hl7.org/fhir/StructureDefinition/patient-mothersMaidenName",
            "valueString": "Pura348 Hickle134"
          },
          {
            "url": "http://hl7.org/fhir/us/core/StructureDefinition/us-core-birthsex",
            "valueCode": "M"
          },
          {
            "url": "http://hl7.org/fhir/StructureDefinition/birthPlace",
            "valueAddress": {
              "city": "Chongqing",
              "state": "Texas",
              "country": "US"
            }
          },
          {
            "url": "http://synthetichealth.github.io/synthea/disability-adjusted-life-years",
            "valueDecimal": 0.005735004927900484
          },
          {
            "url": "http://synthetichealth.github.io/synthea/quality-adjusted-life-years",
            "valueDecimal": 25.9942649950721
          }
        ],
        "identifier": [
          {
            "system": "https://github.com/synthetichealth/synthea",
            "value": "57e3c3e4-8a64-45a2-b183-22ec54b10044"
          },
          {
            "type": {
              "coding": [
                {
                  "system": "http://hl7.org/fhir/v2/0203",
                  "code": "MR",
                  "display": "Medical Record Number"
                }
              ],
              "text": "Medical Record Number"
            },
            "system": "http://hospital.smarthealthit.org",
            "value": "57e3c3e4-8a64-45a2-b183-22ec54b10044"
          },
          {
            "type": {
              "coding": [
                {
                  "system": "http://hl7.org/fhir/identifier-type",
                  "code": "SB",
                  "display": "Social Security Number"
                }
              ],
              "text": "Social Security Number"
            },
            "system": "http://hl7.org/fhir/sid/us-ssn",
            "value": "999-22-6633"
          },
          {
            "type": {
              "coding": [
                {
                  "system": "http://hl7.org/fhir/v2/0203",
                  "code": "DL",
                  "display": "Driver's License"
                }
              ],
              "text": "Driver's License"
            },
            "system": "urn:oid:2.16.840.1.1138<IP_ADDRESS>",
            "value": "S99927651"
          },
          {
            "type": {
              "coding": [
                {
                  "system": "http://hl7.org/fhir/v2/0203",
                  "code": "PPN",
                  "display": "Passport Number"
                }
              ],
              "text": "Passport Number"
            },
            "system": "http://standardhealthrecord.org/fhir/StructureDefinition/passportNumber",
            "value": "X87455154X"
          }
        ],
        "name": [
          {
            "use": "official",
            "family": "Streich926",
            "given": [
              "Everett935"
            ],
            "prefix": [
              "Mr."
            ]
          }
        ],
        "telecom": [
          {
            "system": "phone",
            "value": "555-347-5789",
            "use": "home"
          }
        ],
        "gender": "male",
        "birthDate": "1991-11-23",
        "address": [
          {
            "extension": [
              {
                "url": "http://hl7.org/fhir/StructureDefinition/geolocation",
                "extension": [
                  {
                    "url": "latitude",
                    "valueDecimal": 30.316017
                  },
                  {
                    "url": "longitude",
                    "valueDecimal": -95.469993
                  }
                ]
              }
            ],
            "line": [
              "249 Boehm Landing Apt 50"
            ],
            "city": "Conroe",
            "state": "Texas",
            "postalCode": "77301",
            "country": "US"
          }
        ],
        "maritalStatus": {
          "coding": [
            {
              "system": "http://hl7.org/fhir/v3/MaritalStatus",
              "code": "S",
              "display": "S"
            }
          ],
          "text": "S"
        },
        "multipleBirthBoolean": false,
        "communication": [
          {
            "language": {
              "coding": [
                {
                  "system": "urn:ietf:bcp:47",
                  "code": "zh",
                  "display": "Chinese"
                }
              ],
              "text": "Chinese"
            }
          }
        ]
      }

Ok, made some updates which resolve the "Chongqing, Texas, US" issue, additionally updated the format of the foreign_birthplace.json to read as follows:
{"ethnicity1": ["city1,state1,country1", "city2,state2,country2", ... "cityN,stateN,countryN"],
"ethnicity2": ["city1,state1,country1", "city2,state2,country2", ... "cityN,stateN,countryN"],
...
"ethnicityN": ["city1,state1,country1", "city2,state2,country2", ... "cityN,stateN,countryN"]}
So now when I run 100 users, I see output like:
Where I have an Asian man, who speaks Chinese and was born in Shanghai
{
"url": "http://hl7.org/fhir/StructureDefinition/birthPlace",
"valueAddress": {
"city": "Shanghai",
"state": "Shanghai Municipality",
"country": "CN"
}
}
Full Patient section:
{
"fullUrl": "urn:uuid:6d35c927-ffa2-496b-b8e5-ba26674defff",
"resource": {
"resourceType": "Patient",
"id": "6d35c927-ffa2-496b-b8e5-ba26674defff",
"meta": {
"profile": [
"http://standardhealthrecord.org/fhir/StructureDefinition/shr-entity-Patient"
]
},
"text": {
"status": "generated",
"div": "
Generated by Synthea.Version identifier: v2.2.0-40-gf715b380\n .   Person seed: -5429519707410353741  Population seed:<PHONE_NUMBER>252"
},
"extension": [
{
"url": "http://hl7.org/fhir/us/core/StructureDefinition/us-core-race",
"extension": [
{
"url": "ombCategory",
"valueCoding": {
"system": "urn:oid:2.16.840.1.113883.6.238",
"code": "2028-9",
"display": "Asian"
}
},
{
"url": "text",
"valueString": "Asian"
}
]
},
{
"url": "http://hl7.org/fhir/us/core/StructureDefinition/us-core-ethnicity",
"extension": [
{
"url": "ombCategory",
"valueCoding": {
"system": "urn:oid:2.16.840.1.113883.6.238",
"code": "2186-5",
"display": "Not Hispanic or Latino"
}
},
{
"url": "text",
"valueString": "Not Hispanic or Latino"
}
]
},
{
"url": "http://hl7.org/fhir/StructureDefinition/patient-mothersMaidenName",
"valueString": "Karleen110 Reinger292"
},
{
"url": "http://hl7.org/fhir/us/core/StructureDefinition/us-core-birthsex",
"valueCode": "F"
},
{
"url": "http://hl7.org/fhir/StructureDefinition/birthPlace",
"valueAddress": {
"city": "Shanghai",
"state": "Shanghai Municipality",
"country": "CN"
}
},
{
"url": "http://standardhealthrecord.org/fhir/StructureDefinition/shr-actor-FictionalPerson-extension",
"valueBoolean": true
},
{
"url": "http://standardhealthrecord.org/fhir/StructureDefinition/shr-entity-FathersName-extension",
"valueHumanName": {
"text": "Jewel43 Rippin620"
}
},
{
"url": "http://standardhealthrecord.org/fhir/StructureDefinition/shr-demographics-SocialSecurityNumber-extension",
"valueString": "999-68-4997"
},
{
"url": "http://standardhealthrecord.org/fhir/StructureDefinition/shr-entity-Person-extension",
"valueReference": {
"reference": "urn:uuid:a71af3e7-c012-4d66-b6d2-321768471707"
}
},
{
"url": "http://synthetichealth.github.io/synthea/disability-adjusted-life-years",
"valueDecimal": 0.005735004927900484
},
{
"url": "http://synthetichealth.github.io/synthea/quality-adjusted-life-years",
"valueDecimal": 2.9942649950720996
}
],
"identifier": [
{
"system": "https://github.com/synthetichealth/synthea",
"value": "cb258a5c-3df5-4220-9260-8586bc639571"
},
{
"type": {
"coding": [
{
"system": "http://hl7.org/fhir/v2/0203",
"code": "MR",
"display": "Medical Record Number"
}
],
"text": "Medical Record Number"
},
"system": "http://hospital.smarthealthit.org",
"value": "cb258a5c-3df5-4220-9260-8586bc639571"
},
{
"type": {
"coding": [
{
"system": "http://hl7.org/fhir/identifier-type",
"code": "SB",
"display": "Social Security Number"
}
],
"text": "Social Security Number"
},
"system": "http://hl7.org/fhir/sid/us-ssn",
"value": "999-68-4997"
}
],
"name": [
{
"use": "official",
"family": "Rippin620",
"given": [
"Ferne426"
]
}
],
"telecom": [
{
"system": "phone",
"value": "555-562-5326",
"use": "home"
}
],
"gender": "female",
"birthDate": "2014-11-01",
"address": [
{
"extension": [
{
"url": "http://hl7.org/fhir/StructureDefinition/geolocation",
"extension": [
{
"url": "latitude",
"valueDecimal": 33.107224
},
{
"url": "longitude",
"valueDecimal": -96.674676
}
]
}
],
"line": [
"554 Schmeler Passage"
],
"city": "Allen",
"state": "Texas",
"postalCode": "75002",
"country": "US"
}
],
"maritalStatus": {
"coding": [
{
"system": "http://hl7.org/fhir/v3/MaritalStatus",
"code": "S",
"display": "Never Married"
}
],
"text": "Never Married"
},
"multipleBirthBoolean": false,
"communication": [
{
"language": {
"coding": [
{
"system": "urn:ietf:bcp:47",
"code": "zh",
"display": "Chinese"
}
],
"text": "Chinese"
}
}
]
},
"request": {
"method": "POST",
"url": "Patient"
}
}
A note about added attributes:
I added Person.BIRTH_CITY, Person.BIRTH_STATE and Person.BIRTH_COUNTRY attributes to carry the additional details carried in the foreign_birthplace.json file, and updated the various exporters to use those details in place of the existing state and country vars they were using.  However in the case of CSV exports I kept the output as is, simply outputting a concatenated string of city, state, country under the BIRTHPLACE header because I worried about breaking any existing "contracts" that were based on the previously published format.
I'm not sure if that's how you'd like to proceed here and I'm happy to update the csv output to carry city, state, country if you feel that's the correct path forward, just let me know what you think.
Updating the csv output to city, state, country would simplify the implementation of the Location.randomBirthPlace() and Location.randomBirthplaceByEthnicity() methods.
Re: Names matching ethnicities, what do you think about filing that as a separate issue?  It does look fairly straightforward to fix, but might take a bit of time to compile a list of proper names based on ethnicity.
Thanks for the feedback and the pointers around adding attributes, appreciate the guidance.

I'm not terribly worried about breaking existing contracts with the CSV format, as long as the data dictionary in the Wiki is updated appropriately. That being said, that could be a separate pull request if anyone wants this additional data.

Thank you for the contribution!


TAJO-1409 Clients calling remote services returning BoolProto ignores false values

Now server throws exception to client instead of returning false.

rebased to master

Rebased to master

+1
Thanks @navis. Your patch looks good to me.
I left trivial comments. If you don't mind, I'll reflect them before commit.

@jihoonson
done.run must be called once.  If throwing exception is allowed, I think that we need to handle all case error instead of InvocationFailure
https://issues.apache.org/jira/browse/TAJO-292?focusedCommentId=13838973&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13838973
@navis
Thank you for your contribution. the patch is very useful but It seems to need failure test
Could you add unit test ?

@jinossy you are right. Because clients are calling this APIs with null controller, exception made in server side is not rethrown to client. Seemed need some more works.

@jinossy I have a question.
    NettyClientBase client = getQueryMasterConnection();
    try {
      QueryMasterProtocol.QueryMasterProtocolService.Interface stub = client.getStub();
      stub.doneExecutionBlock(null, reporter, NullCallback.get());
    } finally {
      connPool.releaseConnection(client);
    }

thread calling stub.doneExecutionBlock() is exiting when it ends flushing packet to wire. Is it possible connPool.releaseConnection(client) to close the connection prematurely? Should we release connection when callback is called (with whatever from server)?

@navis
We don’t need release. Actually, releaseConnection is exception cleanup for reconnection.
some kind of codes is my fault. I've remove the legacy code in TAJO-1497

Thanks @jinossy for addressing missing points.

@navis
I will fix network hangs by TAJO-1563

If you set an error message in controller, Async {{CallFuture.get()}} can throw exception.
like this example :
@Override
  public void done(RpcController controller, TajoWorkerProtocol.TaskCompletionReport report,
                   RpcCallback<PrimitiveProtos.BoolProto> done) {
    try {
      QueryMasterTask queryMasterTask = queryMaster.getQueryMasterTask(
          new QueryId(report.getId().getTaskId().getExecutionBlockId().getQueryId()));
      if (queryMasterTask != null) {
        queryMasterTask.getEventHandler().handle(new TaskCompletionEvent(report));
      }
      done.run(TajoWorker.TRUE_PROTO);
    } catch (Exception e) {
      LOG.error(e.getMessage(), e);
      controller.setFailed(e.getMessage());
      done.run(TajoWorker.FALSE_PROTO);
    }
  }

Solved by TAJO-1563, TAJO-1584
please close this PR.


How to link this as the static framework(or library) with SPM?

First, this is really nice & useful for me to develop with SwiftUI through SPM!
Well, recently I've been trying to use the Xcode cloud(it's on the Beta status, though).
Then, there is one trouble to link the SwiftUIX. It's below.

ITMS-90334: Invalid Code Signature Identifier. The identifier "SwiftUIX-555549447bbe021b6ee9380b9449410974d4a8e1" in your code signature for "SwiftUIX_-28E34FF57BD7AEF5_PackageProduct" must match its Bundle Identifier "SwiftUIX".

Since I found out, the issue seems to be from linking the dynamic framework. It occurs,  even though, the SwiftUIX doesn't have the type property as dynamic.
(This is talking about the Package.swift's setting properties)
So, I'd like to know how to use the SwiftUIX as the static framework through SPM.
Because they're linked as the static framework, even though some other frameworks(ex. Alamofire) doesn't have any settings for this, through SPM. Is there any specific options using frameworks or libraries through SPM?
I've had one thing to resolve this. It's the SwiftUIX target's MACH_O_TYPE property sets the static library.
It's useful & effective to avoid the trouble. So, I'm preparing the P.R for it. But, I think there could be the other awesome resolution.
So, I'd like to ask a question like this title.
Could anyone help or give an advice for this?

I'll write this again using my another account! Sorry to duplicate!


macOS cmd key mapping?

Im a macOS user.
It is possible cmd key for mapping?
I really want to map it. It will be extreamly versatile.

Yes. You just need to forward the key to nvim as shown in the readme.


[WIP] Reduce bundle size

Reduce bundle size by:

Removing unused dependencies
Importing only needed portions, not entire libraries
Start building up a dependency graph by moving away from a single file that imports everything

Also add missing ngInject annotations discovered while ensuring things weren't breaking while removing packages.

PT: https://www.pivotaltracker.com/story/show/137617175
@miq-bot add_label wip, euwe/no, refactoring, enhancement

Closing because most of this work was encapsulated in https://github.com/ManageIQ/manageiq-ui-service/pull/450


Android Disable

Changes
This pull request disables support on Android platforms that previously used the '360 Phone Helper' source for download, as this source is no longer available.

Test passed, merging


handle records with no fields

Currently if you try to do the following:
schema = {
    'name': 'Test',
    'namespace': 'test',
    'type': 'record',
    'fields': [
    ],
}

records = [
    {},
]

with open('fastavrotest.avro', 'wb') as out:
    writer(out, schema, records)

Then when you read the container you will get back an empty list of records. I've included an avro file that fails currently:
AssertionError: assert [] == [{}]

But passes with the fix.

Thanks! I'll merge soon-ish...

Out in 0.8.8, thanks!


kallisto index

Hi-
I'm poking around with with kallisto/pizzly in bcbio and running into an error with the quantification step in both stable and dev releases. Running 3 sample analyses on a cluster and either 1 or 2 of the kallisto jobs fail during index generation while the remaining job(s) returns quantification data. At termination, /work/inputs/transcriptome/hg38-noalt.fa is present but not the *.tmp so maybe this is a conflict between jobs running reporting back from separate nodes?
Also, kallisto is building a new index for each sample; is this expected behavior?  If this works out I'd like to run quite a few samples so rebuilding the same index for each one seems inefficient in contrast to holding a centralized index with the genome data like for the read mapper indices. I can't tell if perhaps there should be a kallisto directory holding an index under hg38-noalt or hg38-noalt/rnaseq, but I don't have one.
As always, thanks for your work on this fabulous Swiss army knife!

details:

analysis: RNA-seq
genome_build: hg38-noalt
algorithm:
quality_format: standard
strandedness: firststrand
aligner: star
trim_reads: false
expression_caller: kallisto
fusion_mode: true
variantcaller: vardict
upload:
dir: ../final

[2017-09-28T17:56Z] clusterhn.cluster.com: ipython: run_kallisto_rnaseq
[2017-09-28T17:56Z] n001.cluster.com: Converting /opt/bcbio/genomes/Hsapiens/hg38-noalt/rnaseq/ref-transcripts.gtf to FASTA format.
[2017-09-28T17:56Z] n002.cluster.com: Converting /opt/bcbio/genomes/Hsapiens/hg38-noalt/rnaseq/ref-transcripts.gtf to FASTA format.
[2017-09-28T17:56Z] n002.cluster.com: Converting /opt/bcbio/genomes/Hsapiens/hg38-noalt/rnaseq/ref-transcripts.gtf to FASTA format.
[2017-09-28T17:56Z] n001.cluster.com: Creating Kallisto index for /rnaseq/low-pass-test-config/work/inputs/transcriptome/hg38-noalt.fa.
[2017-09-28T17:56Z] n001.cluster.com: [build] loading fasta file /rnaseq/low-pass-test-config/work/inputs/transcriptome/hg38-noalt.fa
[2017-09-28T17:56Z] n001.cluster.com: [build] k-mer length: 31
[2017-09-28T17:56Z] n001.cluster.com: [build] warning: clipped off poly-A tail (longer than 10)
[2017-09-28T17:56Z] n001.cluster.com:         from 1521 target sequences
[2017-09-28T17:56Z] n001.cluster.com: [build] warning: replaced 86 non-ACGUT characters in the input sequence
[2017-09-28T17:56Z] n001.cluster.com:         with pseudorandom nucleotides
[2017-09-28T17:57Z] n002.cluster.com: Creating Kallisto index for /rnaseq/low-pass-test-config/work/inputs/transcriptome/hg38-noalt.fa.
[2017-09-28T17:57Z] n002.cluster.com: Unexpected error
Traceback (most recent call last):
File "/opt/bcbio/anaconda/lib/python2.7/site-packages/bcbio/distributed/ipythontasks.py", line 50, in _setup_logging
yield config
File "/opt/bcbio/anaconda/lib/python2.7/site-packages/bcbio/distributed/ipythontasks.py", line 133, in run_kallisto_rnaseq
return ipython.zip_args(apply(kallisto.run_kallisto_rnaseq, *args))
File "/opt/bcbio/anaconda/lib/python2.7/site-packages/bcbio/rnaseq/kallisto.py", line 34, in run_kallisto_rnaseq
out_file = kallisto_rnaseq(fq1, fq2, kallisto_dir, gtf_file, fasta_file, data)
File "/opt/bcbio/anaconda/lib/python2.7/site-packages/bcbio/rnaseq/kallisto.py", line 45, in kallisto_rnaseq
index = kallisto_index(gtf_file, fasta_file, data, kallisto_dir)
File "/opt/bcbio/anaconda/lib/python2.7/site-packages/bcbio/rnaseq/kallisto.py", line 114, in kallisto_index
gtf_fa = sailfish.create_combined_fasta(data)
File "/opt/bcbio/anaconda/lib/python2.7/site-packages/bcbio/rnaseq/sailfish.py", line 94, in create_combined_fasta
out_file = gtf.gtf_to_fasta(gtf_file, ref_file, out_file=out_file)
File "/opt/bcbio/anaconda/lib/python2.7/site-packages/bcbio/rnaseq/gtf.py", line 134, in gtf_to_fasta
os.remove(tmp_file)
OSError: [Errno 2] No such file or directory: '/rnaseq/low-pass-test-config/work/inputs/transcriptome/hg38-noalt.fa.tmp'
[2017-09-28T17:57Z] n002.cluster.com: [build] loading fasta file /rnaseq/low-pass-test-config/work/inputs/transcriptome/hg38-noalt.fa
[2017-09-28T17:57Z] n002.cluster.com: [build] k-mer length: 31
[2017-09-28T17:57Z] n002.cluster.com: [build] warning: clipped off poly-A tail (longer than 10)
[2017-09-28T17:57Z] n002.cluster.com:         from 1521 target sequences
[2017-09-28T17:57Z] n002.cluster.com: [build] warning: replaced 86 non-ACGUT characters in the input sequence
[2017-09-28T17:57Z] n002.cluster.com:         with pseudorandom nucleotides
[2017-09-28T17:57Z] n001.cluster.com: [build] counting k-mers ... done.
[2017-09-28T17:58Z] n002.cluster.com: [build] counting k-mers ... done.
[2017-09-28T18:03Z] n001.cluster.com: [build] building target de Bruijn graph ...  done
[2017-09-28T18:03Z] n001.cluster.com: [build] creating equivalence classes ...  done
[2017-09-28T18:03Z] n001.cluster.com: [build] target de Bruijn graph has 1244439 contigs and contains 122835954 k-mers
[2017-09-28T18:04Z] n001.cluster.com: Quantifying transcripts with kallisto.
[2017-09-28T18:04Z] n001.cluster.com: [quant] fragment length distribution will be estimated from the data
[2017-09-28T18:04Z] n001.cluster.com: [index] k-mer length: 31
[2017-09-28T18:04Z] n001.cluster.com: [index] number of targets: 196,345
[2017-09-28T18:04Z] n001.cluster.com: [index] number of k-mers: 122,835,954
[2017-09-28T18:04Z] n001.cluster.com: [index] number of equivalence classes: 797,657
[2017-09-28T18:04Z] n001.cluster.com: [quant] running in paired-end mode
[2017-09-28T18:04Z] n001.cluster.com: [quant] will process pair 1: /rnaseq/fq/BM4203-1.fq.gz
[2017-09-28T18:04Z] n001.cluster.com:                              /rnaseq/fq/BM4203-2.fq.gz
[2017-09-28T18:05Z] n002.cluster.com: [build] building target de Bruijn graph ...  done
[2017-09-28T18:05Z] n001.cluster.com: [quant] finding pseudoalignments for the reads ... done
[2017-09-28T18:05Z] n001.cluster.com: [quant] processed 25,066,582 reads, 18,109,722 reads pseudoaligned
[2017-09-28T18:05Z] n001.cluster.com: [quant] estimated average fragment length: 195.048
[2017-09-28T18:06Z] n002.cluster.com: [build] creating equivalence classes ...  done
[2017-09-28T18:06Z] n002.cluster.com: [build] target de Bruijn graph has 1244439 contigs and contains 122835954 k-mers
[2017-09-28T18:06Z] n001.cluster.com: [   em] quantifying the abundances ... done
[2017-09-28T18:06Z] n001.cluster.com: [   em] the Expectation-Maximization algorithm ran for 1,069 rounds
[2017-09-28T18:06Z] n002.cluster.com: Quantifying transcripts with kallisto.
[2017-09-28T18:06Z] n002.cluster.com: [quant] fragment length distribution will be estimated from the data
[2017-09-28T18:06Z] n002.cluster.com: [index] k-mer length: 31
[2017-09-28T18:06Z] n002.cluster.com: [index] number of targets: 196,345
[2017-09-28T18:06Z] n002.cluster.com: [index] number of k-mers: 122,835,954
[2017-09-28T18:07Z] n002.cluster.com: [index] number of equivalence classes: 797,657
[2017-09-28T18:07Z] n002.cluster.com: [quant] running in paired-end mode
[2017-09-28T18:07Z] n002.cluster.com: [quant] will process pair 1: /rnaseq/fq/BM3969-1.fq.gz
[2017-09-28T18:07Z] n002.cluster.com:                              /rnaseq/fq/BM3969-2.fq.gz
[2017-09-28T18:07Z] n002.cluster.com: [quant] finding pseudoalignments for the reads ... done
[2017-09-28T18:07Z] n002.cluster.com: [quant] processed 16,439,951 reads, 14,151,744 reads pseudoaligned
[2017-09-28T18:08Z] n002.cluster.com: [quant] estimated average fragment length: 193.458
[2017-09-28T18:08Z] n001.cluster.com: [bstrp] number of EM bootstraps complete: 1
[bstrp] number of EM bootstraps complete: 2
[...]
[bstrp] number of EM bootstraps complete: 30
[2017-09-28T18:08Z] n002.cluster.com: [   em] quantifying the abundances ... done
[2017-09-28T18:08Z] n002.cluster.com: [   em] the Expectation-Maximization algorithm ran for 1,058 rounds
[2017-09-28T18:09Z] n002.cluster.com: [bstrp] number of EM bootstraps complete: 1
[bstrp] number of EM bootstraps complete: 2
[...]
[bstrp] number of EM bootstraps complete: 30
Same here, but 2 kallistos died and one survived; the example above was I believe from the release and the one below is from github, in any case it looks like the same problem:
[2017-09-28T20:34Z] n001.cluster.com: Converting /opt/bcbio/genomes/Hsapiens/hg38-noalt/rnaseq/ref-transcripts.gtf to FASTA format.
[2017-09-28T20:34Z] n002.cluster.com: Converting /opt/bcbio/genomes/Hsapiens/hg38-noalt/rnaseq/ref-transcripts.gtf to FASTA format.
[2017-09-28T20:34Z] n002.cluster.com: Converting /opt/bcbio/genomes/Hsapiens/hg38-noalt/rnaseq/ref-transcripts.gtf to FASTA format.
[2017-09-28T20:34Z] n001.cluster.com: Creating Kallisto index for /rnaseq/low-pass-test-config1/work/inputs/transcriptome/hg38-noalt.fa.
[2017-09-28T20:34Z] n001.cluster.com: [build] loading fasta file /rnaseq/low-pass-test-config1/work/inputs/transcriptome/hg38-noalt.fa
[2017-09-28T20:34Z] n001.cluster.com: [build] k-mer length: 31
[2017-09-28T20:34Z] n002.cluster.com: Unexpected error
Traceback (most recent call last):
File "/opt/bcbio/anaconda/lib/python2.7/site-packages/bcbio/distributed/ipythontasks.py", line 50, in _setup_logging
yield config
File "/opt/bcbio/anaconda/lib/python2.7/site-packages/bcbio/distributed/ipythontasks.py", line 133, in run_kallisto_rnaseq
return ipython.zip_args(apply(kallisto.run_kallisto_rnaseq, *args))
File "/opt/bcbio/anaconda/lib/python2.7/site-packages/bcbio/rnaseq/kallisto.py", line 34, in run_kallisto_rnaseq
out_file = kallisto_rnaseq(fq1, fq2, kallisto_dir, gtf_file, fasta_file, data)
File "/opt/bcbio/anaconda/lib/python2.7/site-packages/bcbio/rnaseq/kallisto.py", line 45, in kallisto_rnaseq
index = kallisto_index(gtf_file, fasta_file, data, kallisto_dir)
File "/opt/bcbio/anaconda/lib/python2.7/site-packages/bcbio/rnaseq/kallisto.py", line 114, in kallisto_index
gtf_fa = sailfish.create_combined_fasta(data)
File "/opt/bcbio/anaconda/lib/python2.7/site-packages/bcbio/rnaseq/sailfish.py", line 104, in create_combined_fasta
out_file = gtf.gtf_to_fasta(gtf_file, ref_file, out_file=out_file)
File "/opt/bcbio/anaconda/lib/python2.7/site-packages/bcbio/rnaseq/gtf.py", line 134, in gtf_to_fasta
os.remove(tmp_file)
OSError: [Errno 2] No such file or directory: '/rnaseq/low-pass-test-config1/work/inputs/transcriptome/hg38-noalt.fa.tmp'
[2017-09-28T20:34Z] n002.cluster.com: Unexpected error
Traceback (most recent call last):
File "/opt/bcbio/anaconda/lib/python2.7/site-packages/bcbio/distributed/ipythontasks.py", line 50, in _setup_logging
yield config
File "/opt/bcbio/anaconda/lib/python2.7/site-packages/bcbio/distributed/ipythontasks.py", line 133, in run_kallisto_rnaseq
return ipython.zip_args(apply(kallisto.run_kallisto_rnaseq, *args))
File "/opt/bcbio/anaconda/lib/python2.7/site-packages/bcbio/rnaseq/kallisto.py", line 34, in run_kallisto_rnaseq
out_file = kallisto_rnaseq(fq1, fq2, kallisto_dir, gtf_file, fasta_file, data)
File "/opt/bcbio/anaconda/lib/python2.7/site-packages/bcbio/rnaseq/kallisto.py", line 45, in kallisto_rnaseq
index = kallisto_index(gtf_file, fasta_file, data, kallisto_dir)
File "/opt/bcbio/anaconda/lib/python2.7/site-packages/bcbio/rnaseq/kallisto.py", line 114, in kallisto_index
gtf_fa = sailfish.create_combined_fasta(data)
File "/opt/bcbio/anaconda/lib/python2.7/site-packages/bcbio/rnaseq/sailfish.py", line 104, in create_combined_fasta
out_file = gtf.gtf_to_fasta(gtf_file, ref_file, out_file=out_file)
File "/opt/bcbio/anaconda/lib/python2.7/site-packages/bcbio/rnaseq/gtf.py", line 134, in gtf_to_fasta
os.remove(tmp_file)
OSError: [Errno 2] No such file or directory: '/rnaseq/low-pass-test-config1/work/inputs/transcriptome/hg38-noalt.fa.tmp'
[2017-09-28T20:34Z] n001.cluster.com: [build] warning: clipped off poly-A tail (longer than 10)
[2017-09-28T20:34Z] n001.cluster.com:         from 1521 target sequences
[2017-09-28T20:34Z] n001.cluster.com: [build] warning: replaced 86 non-ACGUT characters in the input sequence
[2017-09-28T20:34Z] n001.cluster.com:         with pseudorandom nucleotides
[2017-09-28T20:35Z] n001.cluster.com: [build] counting k-mers ... done.
[2017-09-28T20:40Z] n001.cluster.com: [build] building target de Bruijn graph ...  done
[2017-09-28T20:41Z] n001.cluster.com: [build] creating equivalence classes ...  done
[2017-09-28T20:41Z] n001.cluster.com: [build] target de Bruijn graph has 1244439 contigs and contains 122835954 k-mers
[2017-09-28T20:41Z] n001.cluster.com: Quantifying transcripts with kallisto.
[2017-09-28T20:41Z] n001.cluster.com: [quant] fragment length distribution will be estimated from the data
[2017-09-28T20:41Z] n001.cluster.com: [index] k-mer length: 31
[2017-09-28T20:41Z] n001.cluster.com: [index] number of targets: 196,345
[2017-09-28T20:41Z] n001.cluster.com: [index] number of k-mers: 122,835,954
[2017-09-28T20:42Z] n001.cluster.com: [index] number of equivalence classes: 797,657
[2017-09-28T20:42Z] n001.cluster.com: [quant] running in paired-end mode
[2017-09-28T20:42Z] n001.cluster.com: [quant] will process pair 1: /rnaseq/fq/BM4203-1.fq.gz
[2017-09-28T20:42Z] n001.cluster.com:                              /rnaseq/fq/BM4203-2.fq.gz
[2017-09-28T20:43Z] n001.cluster.com: [quant] finding pseudoalignments for the reads ... done
[2017-09-28T20:43Z] n001.cluster.com: [quant] processed 25,066,582 reads, 18,109,722 reads pseudoaligned
[2017-09-28T20:43Z] n001.cluster.com: [quant] estimated average fragment length: 194.945
[2017-09-28T20:44Z] n001.cluster.com: [   em] quantifying the abundances ... done
[2017-09-28T20:44Z] n001.cluster.com: [   em] the Expectation-Maximization algorithm ran for 1,069 rounds
[2017-09-28T20:45Z] n001.cluster.com: [bstrp] number of EM bootstraps complete: 1
[...]
[bstrp] number of EM bootstraps complete: 30

Thanks @jefarrar, good catch. I fixed this issue so now it won't run on every sample; it will run on the first set if more than one sample is running at the same time but after that it won't run on each sample.


Plugin class not found after plugin activation

After activating the plugin it shows a fatal error:
Fatal error: Uncaught Error: Class 'Recras\Plugin' not found in /home/runcloud/webapps/wordpress/wp-content/plugins/recras/recras-wordpress-plugin.php:26
Stack trace: #0 /home/runcloud/webapps/wordpress/wp-settings.php(409): include_once()  #1 /home/runcloud/webapps/wordpress/wp-config.php(99): require_once('/home/runcloud/...')  #2 /home/runcloud/webapps/wordpress/wp-load.php(50): require_once('/home/runcloud/...')  #3 /home/runcloud/webapps/wordpress/wp-blog-header.php(13): require_once('/home/runcloud/...')  #4 /home/runcloud/webapps/wordpress/index.php(17): require('/home/runcloud/...') #5 {main} thrown in /home/runcloud/webapps/wordpress/wp-content/plugins/recras/recras-wordpress-plugin.php on line 26
We've tested this with:

Various custom themes
WordPress 5.6.6 and 5.8.3
Various plugins activated and everything deactivated
Various servers and hosting providers

What is interesting is that the plugin keeps working on another website where the plugin has been active for several years and has been updated while active. Any new or existing WordPress installation where we try to activate the plugin results in the above mentioned fatal error.
Any help with this issue would be greatly appreciated!

Hi!
I have just tried to install (and activate) the plugin on a website that never had the plugin before, and it worked just fine. Can you share the following information?

how did you install the plugin? (from the Plugins page in WP, downloaded from the plugins site and uploaded to the site, downloaded from GitHub, or something else)
what version of PHP are you running?

Thanks!

Hi there!
Thanks for checking. In the meantime we did some more testing ourselves. The problem seems to be the require_once statement in recras-wordpress-plugin.php.
Because there was no directory specified it included the autoloader in the root of our application folder, which exists because we use composer in our theme as well. It can be fixed by adding the plugin directory to the require statement:
require_once(plugin_dir_path(__FILE__) . 'vendor/autoload.php');
For now we'll add this to the plugin in our codebase. We hope it can be added in an upcoming update so we can keep updating the plugin in the future. :)
Thanks!

Thanks for the update! We will update this in our plugin. Can you please let us know if the pages from the Recras menu work as expected? They are also loaded through an require_once without a folder.

The settings pages do work in our application, but I think it would be wise to also specify the plugin directory for those. According to the PHP documentation, an include/require statement will first look for the folder in the root and if it is not found there try it in the directory where it was called. That's why the initial require_once in the plugin root file landed in our theme vendor folder.
Reference: https://www.php.net/manual/en/function.include.php
In our plugins we always define a few necessary constants in the root file, which we can use throughout the plugin. You could, for example doo something like this:
## recras-wordpress-plugin.php
define('RECRAS_PLUGIN_DIR', plugin_dir_path(__FILE__));
require_once(RECRAS_PLUGIN_DIR . 'vendor/autoload.php');
## src/Settings.php
require_once(RECRAS_PLUGIN_DIR . 'src/admin/cache.php');
This way you can be absolutely sure it always includes starting from the plugin directory.


Add 2 more tag validation checks

ensure we are on a release branch
ensure the major/minor versions match the release branch

What this PR does / why we need it:
Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #

/ok-to-test
/lgtm
/approve

/lgtm


autodownload broken if pak name larger than 64 bytes

I noticed that the feature of loading an extrapak in a subdirectory now breaks the autodownload mechanism, basically the pak name does not look complete.
We were able to do before:
./daemon -set fs_extrapaks dev/backport

We are only able to do now:
./daemon -set fs_extrapaks backport

It may have been broken in #14 (effort to rewrite the TimePath's original effort to support legacy pk3).

Ok, this is not related to sub directories, I got this:
Warn: File "backport_0.51.1+20190217-022557+4156ab6+illwieckz+1_fcc4b845.dp" not found on server for autodownloading.

And you know what?
printf 'backport_0.51.1+20190217-022557+4156ab6+illwieckz+1_fcc4b845.dp\0' | wc -c
64

So basically downloadName is set to 256 in client but 64 in server, and in anyway, 64 is not large enough.
https://github.com/DaemonEngine/Daemon/blob/9322bda72627da2846310f5e4f624449b22122bf/src/engine/qcommon/q_shared.h#L199-L200
https://github.com/DaemonEngine/Daemon/blob/9322bda72627da2846310f5e4f624449b22122bf/src/engine/client/client.h#L344
https://github.com/DaemonEngine/Daemon/blob/9322bda72627da2846310f5e4f624449b22122bf/src/engine/server/server.h#L171
https://github.com/DaemonEngine/Daemon/blob/9322bda72627da2846310f5e4f624449b22122bf/src/engine/server/sv_ccmds.cpp#L143


Rule query refactoring

Coverage increased (+0.004%) to 99.119% when pulling 0f74be513125306ae3bf484030935141ee152110 on rule-query-refactoring into c650fddb7b61380e68e5b73910b4c4d237f7aef8 on master.


feat(scalar-as-modules): Allow users to consume the different parts o…

Allow users to consume the different parts of the HTML as they see fit. By modularizing the API we can consume these parts individually and do our own wrapping around the html.

Is this something that will be considered? @MarceloPetrucio Otherwise I'll create a separate lib :)


Change default active interpreter to point to the python in current path

As a notice user I test & run Python (& or Jupyter) with python thats in my current path.
However when using Python or Jupyter notebooks a different Python interpreter is used hence:
In Jupyter extension

I get prompted to install ipykernel (no idea what this is, i'll click ok)
After running a cell, i get module not found errors

Suggestion:
Change the active interpreter in the Python extnsion to point to what's in the current path.
Related issue in Jupyter is here https://github.com/microsoft/vscode-jupyter/issues/5998
(We could either change Jupyter extension to use Python in path or optionally make this change in Python exension)
Originally posted by @DonJayamanne in https://github.com/microsoft/vscode-python/discussions/16335

The problem I see with this is what python points to changes every time you install Python. For instance, it might be CPython 3.9.4 today, but when I install CPython 3.9.5 and CPython 3.8.10 later in that order then python will point at Python 3.8 which also won't have ipykernel installed.


Failed installation on Windows 10; Problem with 'wget' command

Failed at the<EMAIL_ADDRESS>postinstall script 'wget https://raw.githubusercontent.com/git-tips/tips/master/tips.json -O tips.json'.

The failure to install is due to lack of wget utility.
Could you try downloading and installing wget and revert back if it's successful with the steps you followed? I don't have a working windows environment right now.
I know this is long overdue but better late than never :smile: Also sorry for the inconvenience.

Thanks Niraj, will try it out and get you feedback if anything pops up.
Enjoy the day.
On Tue, Feb 13, 2018 at 3:44 AM, Niraj Pandkar<EMAIL_ADDRESS>wrote:

The failure to install is due to lack of wget utility.
Could you try downloading and installing wget
http://gnuwin32.sourceforge.net/packages/wget.htm and revert back if
it's successful with the steps you followed? I don't have a working windows
environment right now.
I know this is long overdue but better late than never 😄 Also sorry for
the inconvenience.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/git-tips/tips/issues/149#issuecomment-365142082, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ACCpP4XQwOYr8lok9_U2ILzRxlX-JfSsks5tUQUUgaJpZM4OnOlN
.


fix(android): Prevent ClassNotFoundException if applicationId is not same as manifest package name

Platforms affected
android
What does this PR do?
Prevent ClassNotFoundException when applicationid not same as manifest package name
What testing has been done on this change?
Tested locally on Nexus 5x.
Checklist

[x ] Reported an issue in the JIRA database
[x ] Commit message follows the format: "CB-3232: (android) Fix bug with resolving file paths", where CB-xxxx is the JIRA ID & "android" is the platform affected.
Commit message: CH-513: (android) Prevent ClassNotFoundException
(issue #513 created in Github, not JIRA.)
[x ] Added automated test coverage as appropriate for this change.
No tests added.

Pull request created at request of user @janpio

Hey guys, any luck this can be integrated?

I've tested this fix in my project and it works as expected.
It's especially an issue when using the cordova-plugin-camera with capacitor, since capacitor projects generally use gradle build variants with applicationIdSuffix.

Do you happen to have small example project that shows the error? This would help testing this PR.

Digging deeper, it seems this has been solved in the cordova-android project instead. Can you test if latest platform (cordova platform add https://github.com/apache/cordova-android.git) works without this PR? @asztal

I confirm this is fixed in cordova-android 9 and the next release of the plugin will require cordova-android 9, so it's not needed  anymore.


fix: Chat - Font size is smaller in single backtick code block.

Details

Fixed Issues
$ https://github.com/Expensify/App/issues/35746
PROPOSAL: https://github.com/Expensify/App/issues/35746#issuecomment-1925353604
Tests

Go to any chat
On the compose box, enter "some text" with single backtick and send it
On the compose box, enter "some text" with triple backtick and send it
Verify both code blocks have same text size

[x] Verify that no errors appear in the JS console

Offline tests

Go to any chat
On the compose box, enter "some text" with single backtick and send it
On the compose box, enter "some text" with triple backtick and send it
Verify both code blocks have same text size

QA Steps

Go to any chat
On the compose box, enter "some text" with single backtick and send it
On the compose box, enter "some text" with triple backtick and send it
Verify both code blocks have same text size

[x] Verify that no errors appear in the JS console

PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

[x] Android: Native
[x] Android: mWeb Chrome
[x] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If the PR modifies the form input styles:

[x] I verified that all the inputs inside a form are aligned with each other.
[x] I added Design label so the design team can review the changes.

[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.

Screenshots/Videos

Android: Native
https://github.com/Expensify/App/assets/85894871/7d2077b6-c930-4f7f-ae45-1c760993fccb

Android: mWeb Chrome
https://github.com/Expensify/App/assets/85894871/fdba5cf1-37ee-464b-97ef-9fa70f3ea010

iOS: Native
https://github.com/Expensify/App/assets/85894871/d2967137-cd49-4fac-a9cf-88991082a5e2

iOS: mWeb Safari
https://github.com/Expensify/App/assets/85894871/df5ba624-203f-421b-a3d4-d982c24ca08a

MacOS: Chrome / Safari
https://github.com/Expensify/App/assets/85894871/6707cf5d-bf2b-441a-aa4c-7e5e6a787279

MacOS: Desktop
https://github.com/Expensify/App/assets/85894871/31cec3c2-efb6-496f-bd86-b216ea64a7bf

🚀 Deployed to staging by https://github.com/bondydaa in version: 1.4.44-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/puneetlath in version: 1.4.44-13 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


Error: Configuration has already been loaded. Call setPackagePath before using other APIs.

package.json:
    "aurelia-bundler": "^0.1.9",
    "jspm": "^0.16.14",
    "systemjs": "^0.19.5",
    "systemjs-builder": "^0.13.5",

bundle config:
var aureliaLibs = [
    'aurelia-animator-css',
    'aurelia-binding',
    'aurelia-bootstrapper',
    'aurelia-dependency-injection',
    'aurelia-framework',
    'aurelia-fetch-client',
    'aurelia-router',
    'aurelia-event-aggregator',
    'aurelia-history-browser',
    'aurelia-loader-default',
    'aurelia-loader',
    'aurelia-metadata',
    'aurelia-route-recognizer',
    'aurelia-templating-binding',
    'aurelia-templating-resources',
    'aurelia-templating-router',
    'aurelia-templating',
    'aurelia-logging',
    'aurelia-task-queue',
    'aurelia-history',
    'aurelia-path',
    'aurelia-pal',
    'aurelia-pal-browser'
];

var bundleOpts = {
    inject: true,
    minify: false
};

module.exports = {
    packagePath: 'build/',
    force: true,
    bundles: {
        "app/framework-bundle": {
            includes: aureliaLibs,
            options: bundleOpts
        }
    }
};

@dredzone could you setup a github repo with this problem so that I can check it directly?

repo: https://github.com/dredzone/aurelia-poc
gulp build-prod-env
Thanks.

@ahmedshuhel this is affecting my team as well. Any update on this issue?

@ahmedshuhel We need to address this with top priority please.

I had "systemjs-builder": "^0.14.9" dependency in my package.json, after removing it I was able to bundle with no problems.

@AshleyGrant  @EisenbergEffect  I am working on it now.

This issue should be resolved in v0.2.0. Please download and give it a try. There is a slight change in the configuration. README has an example bundle configuration( with comments). Hope this will help to understand the changes.

@ahmedshuhel Please submit a pr to udpate the docs. They are in the doc folder of the framework library. I can release those as soon as we have the pr.

Will do that.


List shows loading and empty widget's at the same time

Given the following code:
return Scaffold(
  drawer: AppDrawer(activeRoute: activeRoute),
  appBar: AppBar(title: title),
  body: CustomListView(
    empty: Text("Empty"),
    pageSize: 12,
    loadingBuilder: (BuildContext context) => Center(child: CircularProgressIndicator()),
    adapter: ListAdapter(fetchItems: (int offset, int limit) async {
      var items = await fetchItems(offset,limit);
      return ListItems(items.data, reachedToEnd: items.to == items.total);
    }),
    itemBuilder: (BuildContext context, int idx, dynamic item) => MyListItem(item),
  ),
);

Both the word "empty" and the CircularProgressIndicator are visible to the user.
Please, correct me if I'm wrong, but this doesn't seem like the intended behaviour?

Nice one!