I2C: GPIO: Convert bit banging I2C controller to use devicetree binding

Convert the GPIO bit banging I2C driver to configure its instances from devicetree.

@galak, @mbolivar-nordic Any idea why the following devicetree snippet utilizing the binding introduced in this PR causes scripts/dts/gen_legacy_defines.py to fail?
	gpio_i2c0: gpio_i2c {
		status = "okay";
		compatible = "gpio-i2c";
		scl-gpios = <&gpioe 24 0>;
		sda-gpios = <&gpioe 25 0>;
		clock-frequency = <I2C_BITRATE_STANDARD>;
		label = "GPIO_I2C_0";
		#address-cells = <1>;
		#size-cells = <0>;

		fxos8700@1d {
			compatible = "nxp,fxos8700";
			reg = <0x1d>;
			label = "FXOS8700";
			int1-gpios = <&gpioc 6 GPIO_ACTIVE_LOW>;
			int2-gpios = <&gpioc 13 GPIO_ACTIVE_LOW>;
		};
	};

The build error is:
$ cmake -DBOARD=frdm_k64f ..
Including boilerplate (Zephyr base): /home/brix/Projects/zephyrproject/zephyr/cmake/app/boilerplate.cmake
-- Application: /home/brix/Projects/zephyrproject/zephyr/tests/boards/board_shell
-- Zephyr version: 2.2.99 (/home/brix/Projects/zephyrproject/zephyr)
-- Found Python3: /usr/bin/python3.6 (found suitable exact version "3.6.9") found components:  Interpreter
-- Board: frdm_k64f
-- Found west: /home/brix/.local/bin/west (found suitable version "0.7.2", minimum required is "0.7.1")
-- Found toolchain: zephyr (/opt/zephyr-sdk)
-- Found BOARD.dts: /home/brix/Projects/zephyrproject/zephyr/boards/arm/frdm_k64f/frdm_k64f.dts
-- Generated zephyr.dts: /home/brix/Projects/zephyrproject/zephyr/tests/boards/board_shell/build/zephyr/zephyr.dts
-- Generated devicetree_unfixed.h: /home/brix/Projects/zephyrproject/zephyr/tests/boards/board_shell/build/zephyr/include/generated/devicetree_unfixed.h
Traceback (most recent call last):
  File "/home/brix/Projects/zephyrproject/zephyr/scripts/dts/gen_legacy_defines.py", line 822, in <module>
    main()
  File "/home/brix/Projects/zephyrproject/zephyr/scripts/dts/gen_legacy_defines.py", line 51, in main
    write_regs(node)
  File "/home/brix/Projects/zephyrproject/zephyr/scripts/dts/gen_legacy_defines.py", line 193, in write_regs
    write_reg(reg, "BASE_ADDRESS", hex(reg.addr))
  File "/home/brix/Projects/zephyrproject/zephyr/scripts/dts/gen_legacy_defines.py", line 190, in write_reg
    f"{str2ident(reg.name)}_{base_ident}" if reg.name else None)
  File "/home/brix/Projects/zephyrproject/zephyr/scripts/dts/gen_legacy_defines.py", line 695, in out_node
    node_prefix = node_ident(node)
  File "/home/brix/Projects/zephyrproject/zephyr/scripts/dts/gen_legacy_defines.py", line 302, in node_ident
    str2ident(node.bus_node.matching_compat), node.bus_node.unit_addr)
TypeError: unsupported format string passed to NoneType.__format__
CMake Error at /home/brix/Projects/zephyrproject/zephyr/cmake/dts.cmake:241 (message):
  gen_legacy_defines.py failed with return code: 1
Call Stack (most recent call first):
  /home/brix/Projects/zephyrproject/zephyr/cmake/app/boilerplate.cmake:503 (include)
  /home/brix/Projects/zephyrproject/zephyr/share/zephyr-package/cmake/ZephyrConfig.cmake:24 (include)
  /home/brix/Projects/zephyrproject/zephyr/share/zephyr-package/cmake/ZephyrConfig.cmake:35 (include_boilerplate)
  CMakeLists.txt:4 (find_package)

-- Configuring incomplete, errors occurred!

@galak, @mbolivar-nordic Any idea why the following devicetree snippet utilizing the binding introduced in this PR causes scripts/dts/gen_legacy_defines.py to fail?

I have added a fix for scripts/dts/gen_legacy_defines.py to handle bus parent nodes without regs properties. Please review.

I would like to see this in v2.3.0, if possible. It is part of a stepping stone path for https://github.com/zephyrproject-rtos/zephyr/pull/23442.


Extending DebugSystems not possible

Hi, this is continuing the discussion we had in #434, where I posted a UnitySystems class that allowed to distinguish between sub-systems executed at Update, FixedUpdate and LateUpdate. My problem is that I can not easily integrate my UnitySystems class into the Entitas VisualDebugging framework.
This is caused by DebugSystems using private instead of protected properties (like _stopwatch or _executeSystemInfos) making it impossible to extend the class. The only solution I see is to completely copy DebugSystems into a new class (DebugUnitySystems). But then I would also have to copy DebugSystemsBehavior and DebugSystemsInspector. So I would in the end replicate most of what the VisualDebugging feature of Entitas is already doing.
I really would like to avoid this. I understand that DebugSystems is not meant to be extended as everything should still work if VisualDebugging is deactivated. So do you have any ideas how to use VisualDebugging for a class that directly extends Systems instead of DebugSystems without copying all the existing code? Or would it be possible to make the VisualDebugging feature more flexible to allow for such use cases?

Any progress on that?


Analyzer message for importing legacy libraries

Here's the output on an app where bin/oldapp.dart imports a library lib/old.dart with @dart=2.9 marker:
  error • lib/old.dart:1:1 • The language version must be >=2.12.0. Try removing the language version override and
          migrating the code. • illegal_language_version_override
   info • bin/oldapp.dart:1:8 • The library 'package:oldapp/old.dart' is legacy, and shouldn't be imported into a null
          safe library. Try migrating the imported library. • import_of_legacy_library_into_null_safe

The first error says the language marker isn't allowed, and is what I think we want.
The second info is related to importing this library. Do we still want that in Dart 3? It seems irrelevant in Dart 3; here the issue isn't importing it, it's it existing in the first place (which is the error).

If the imported library were in a different package (or excluded from analysis), would we just rely on runtime semantics to report lib/old.dart?

pub get will already fail on trying to consume a package that has an SDK constraint lower than 2.12. There may still be packages that have 2.12 in the pubspec, but some old language markers. Those packages are not Dart 3 compatible, and will not get a Dart 3 ready tag on pub.dev.
Further, the compilers will reject any language markers below 2.12, so we'd catch that at compile time, not runtime.

If this diagnostic is still helpful for unpublished packages, then I think it is still helpful. If compile-time is good enough, we can remove it.

While I agree that the info seems somewhat redundant, I think that we should leave it. The most compelling reason is that some users won't have the problems view visible, and hence will only see the diagnostics in the files that are currently visible. By making the diagnostic visible both in the library with the invalid language comment and in any library that imports it, we improve the chance that a user will be informed of the problem before they try to compile their code.
There's also a pragmatic reason: the info is only redundant and will likely be seen by a very small number of users in 3.0, so the benefit of making the code conditional might not justify the cost of doing so.

I'll reiterate the case of importing a file not in the current package:

I am running Dart 3.0
I open my editor to package_a (or run dart analyze in package_a).
All of the libraries in package_a effectively have 2.12.0 as a language version.
One library imports a library which is outside package_a: package:package_b/package_b.dart, which has a language version of 2.9, because of a // @dart=2.9 comment. package_b is not published; it's just my company's private package_b, and it has an SDK constraint of >=2.12.0.

We can either report the import, or not. If we do not, there will be no other diagnostic reported in the IDE or with dart analyze, and the user will find out at runtime.
WDYT @mit-mit ? This is in a Dart 3 milestone so we should decide whether a change must be made or not.

I don't feel very strongly about this one, and sounds like you both prefer we leave this as-is, so closing for now (we can reconsider if users report this)


request: RawIO for Bonsai data

It would be great to have a reader for Bonsai. They store their data in raw binary, so it should be just a matter of parsing the data type, shape, etc. and creating a memmap.

Hi @bendichter , I can have a look into this. Is this example dataset the format you are looking for? I did not yet find more detailed specifications on the format, e.g. what data type to expect from a bonsai sink. Maybe @glopesdev could point to the corresponding documentation?

@JuliaSprenger thanks! I don't know what data would be best. I'd defer to @glopesdev

Hey @JuliaSprenger @bendichter I've been looking more into this using the example dataset @JuliaSprenger found as well as some others like from https://groups.google.com/g/bonsai-users/c/ZdHnXKxgnA8 as well as personally playing around with really simple input/output workflows in Bonsai attached below.

I did not yet find more detailed specifications on the format, e.g. what data type to expect from a bonsai sink.

From what I can tell in these workflows, it all comes down to the MatrixWriter node that writes the simple int16 blob to whatever filename+suffix the user specifies.
While that's simple enough in principle, the issue I'm running into seems to be the the number of channels being parsed by the reader nodes in each of these workflows is not a detail included in the .bonsai header itself (any later nodes regarding channels, like the 'Select Channel' node, seem only to allow or specify subsets of the available channels). The closest I've come to finding such a specification is in the MatrixReader node of my example where such information must be manually specified by the user.
So a neo or spikeinterface reader for this seems like it would have to take num_channels as a required input, though it should in principle be capable of always automatically detected the sampling frequency from the Rhdboard or other reader node.
Maybe @glopesdev can confirm for us if there is any other way to get the shape information required to read the binary blob?
Bonsai_small_matrix_example.zip

@JuliaSprenger Regarding some other details, since I noticed they allow specification of Row vs. Column major (unclear from 'layout' if this is just on-disk convention or actual data transposition), so here's another example with that option flipped. In both cases, np.memmap(filename="E:/Bonsai/example_output_row.raw", shape=(10,80), dtype="int16", order="C") returned the same traces as from the ground truth NeuroScopeRecording traces.
Bonsa_simple_matrix_example_row.zip

Just following up on this. I know nothing about bonsai, but does this seem feasible or would it fit better with just a binary reader? Is there still interest in this?

Bonsai is a pipeline management system
While it has some capability for having nodes in that pipeline that interact with disk via save/load operations, it is not in and of itself a data format and the basic export capability is a simple, classic binary file (for which the existing binary readers work, as long as you know the right shape/type information)
The hope was that the Bonsai header (which defines the pipeline) might have some of that information (such as number of channels) but in the examples I found it did not and even had to be specified manually in their own GUI
Also, Bonsai is very extensible, so anyone could write their own custom export node to save the data to whatever format they wish, again pointing to how this isn't really something a universal API could guarantee support for
Long term, the best way to interact with the format would be to write exporter nodes that could be loaded into the pipeline itself. But I don't think that's neo's resposbility

Cool. Thanks for the explainer @CodyCBakerPhD. I think we close this and we can point people to binary reader in the case someone wants to read from a node.


Alamofire5 signposts

Issue Link :link:

Goals :soccer:

Implementation Details :construction:

Testing Details :mag:

Support for signposts will be reevaluated after AF5 release.


SearcheMe.co No longer working?

Mr. Sweeney, Our company has been using this product for a long time now (Probably soon after you launched it).  It has become a daily product that I find myself missing over the last week since the site seems to have been down.  I would love for an update on whether you discontinued service to the site and if so, what we could do to get it up and running again.  I would appreciate you reaching out to me if you can.   Thank you very much.  Shawn Harris<PHONE_NUMBER>

Hi Shawn, SearchMe is back up and running at https://thesearchmeapp.herokuapp.com/. Sorry for the outage, shouldn't happen again.

Happy to see your program is back!!  I found just a small glitch that I would like for you to know about!
It doesn’t happen in all threads but I have found it in a few.  System starts to load all messages and stalls with 3 messages left and then nothing more can happen.  It doesn’t allow me to search that thread at all.  I have attempted it via Edge, Safari and Chrome.  Occurs on my desktop as well as my mobile devices.  But it also doesn’t seem to affect every member of our groups.  Attached is a screen shot of problem from my desktop.
Let me know if you think you have a solution.
Thank you,
Shawn Harris
West Texas Premix Pits
shawn<EMAIL_ADDRESS>432-559-7402
[ShawnBizCard-small]
From: Patrick Sweeney<EMAIL_ADDRESS>Sent: Sunday, March 7, 2021 9:43 AM
To: psweeney101/SearchMe<EMAIL_ADDRESS>Cc: Shawn Harris<EMAIL_ADDRESS>Author<EMAIL_ADDRESS>Subject: Re: [psweeney101/SearchMe] SearcheMe.co No longer working? (#7)
Hi Shawn, SearchMe is back up and running at https://thesearchmeapp.herokuapp.com/. Sorry for the outage, shouldn't happen again.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/psweeney101/SearchMe/issues/7#issuecomment-792298746, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AS6NAOAS37Y7NKL2H4RAITDTCONGPANCNFSM4YBJLOTQ.


Video on react-naive-chabot

Hello! I'm using the 'react-native-chatbot' component, I saw that there is a way to put custom components built into the chat. However, I can only put text and I need to put a video. Can anyone help?

Thank you for your help!


add: X-Zalando-Customer

most used proprietary header of Fashion Store Interface Framework

👍

:+1:


[Doc Improvement][Update universal action description for Action.Execute]

Updated the Universal action description

Acrolinx Scorecards
We currently enforce a minimum score of 80.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology:

Article
Score
Issues
Scorecard
Processed

msteams-platform/task-modules-and-cards/cards/Universal-actions-for-adaptive-cards/Overview.md
93
5
link
:white_check_mark:

More info about Acrolinx
Use the Acrolinx extension, or sidebar, in Visual Studio Code to check spelling, grammar, style, tone, clarity, and key terminology when you're creating or updating content. For more information, see Use the Visual Studio Code extension to run Acrolinx locally.

Learn Build status updates of commit 3c58913:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

msteams-platform/task-modules-and-cards/cards/Universal-actions-for-adaptive-cards/Overview.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel

Acrolinx Scorecards
We currently enforce a minimum score of 80.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology:

Article
Score
Issues
Scorecard
Processed

msteams-platform/task-modules-and-cards/cards/Universal-actions-for-adaptive-cards/Overview.md
93
5
link
:white_check_mark:

More info about Acrolinx
Use the Acrolinx extension, or sidebar, in Visual Studio Code to check spelling, grammar, style, tone, clarity, and key terminology when you're creating or updating content. For more information, see Use the Visual Studio Code extension to run Acrolinx locally.

Learn Build status updates of commit d280e48:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

msteams-platform/task-modules-and-cards/cards/Universal-actions-for-adaptive-cards/Overview.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel

Learn Build status updates of commit 3147ab9:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

msteams-platform/task-modules-and-cards/cards/Universal-actions-for-adaptive-cards/Overview.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel

Acrolinx Scorecards
We currently enforce a minimum score of 80.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology:

Article
Score
Issues
Scorecard
Processed

msteams-platform/task-modules-and-cards/cards/Universal-actions-for-adaptive-cards/Overview.md
92
6
link
:white_check_mark:

More info about Acrolinx
Use the Acrolinx extension, or sidebar, in Visual Studio Code to check spelling, grammar, style, tone, clarity, and key terminology when you're creating or updating content. For more information, see Use the Visual Studio Code extension to run Acrolinx locally.

Learn Build status updates of commit cc94475:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

msteams-platform/task-modules-and-cards/cards/Universal-actions-for-adaptive-cards/Overview.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel

Acrolinx Scorecards
We currently enforce a minimum score of 80.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology:

Article
Score
Issues
Scorecard
Processed

msteams-platform/task-modules-and-cards/cards/Universal-actions-for-adaptive-cards/Overview.md
92
6
link
:white_check_mark:

More info about Acrolinx
Use the Acrolinx extension, or sidebar, in Visual Studio Code to check spelling, grammar, style, tone, clarity, and key terminology when you're creating or updating content. For more information, see Use the Visual Studio Code extension to run Acrolinx locally.

Learn Build status updates of commit a38fa94:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

msteams-platform/task-modules-and-cards/cards/Universal-actions-for-adaptive-cards/Overview.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel

Acrolinx Scorecards
We currently enforce a minimum score of 80.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology:

Article
Score
Issues
Scorecard
Processed

msteams-platform/task-modules-and-cards/cards/Universal-actions-for-adaptive-cards/Overview.md
92
6
link
:white_check_mark:

More info about Acrolinx
Use the Acrolinx extension, or sidebar, in Visual Studio Code to check spelling, grammar, style, tone, clarity, and key terminology when you're creating or updating content. For more information, see Use the Visual Studio Code extension to run Acrolinx locally.

Learn Build status updates of commit 7551ebf:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

msteams-platform/task-modules-and-cards/cards/Universal-actions-for-adaptive-cards/Overview.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel

Acrolinx Scorecards
We currently enforce a minimum score of 80.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology:

Article
Score
Issues
Scorecard
Processed

msteams-platform/task-modules-and-cards/cards/Universal-actions-for-adaptive-cards/Overview.md
92
6
link
:white_check_mark:

More info about Acrolinx
Use the Acrolinx extension, or sidebar, in Visual Studio Code to check spelling, grammar, style, tone, clarity, and key terminology when you're creating or updating content. For more information, see Use the Visual Studio Code extension to run Acrolinx locally.

Acrolinx Scorecards
We currently enforce a minimum score of 80.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology:

Article
Score
Issues
Scorecard
Processed

msteams-platform/task-modules-and-cards/cards/Universal-actions-for-adaptive-cards/Overview.md
92
6
link
:white_check_mark:

More info about Acrolinx
Use the Acrolinx extension, or sidebar, in Visual Studio Code to check spelling, grammar, style, tone, clarity, and key terminology when you're creating or updating content. For more information, see Use the Visual Studio Code extension to run Acrolinx locally.

Learn Build status updates of commit 2382c6e:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

msteams-platform/task-modules-and-cards/cards/Universal-actions-for-adaptive-cards/Overview.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel

Learn Build status updates of commit 6697b9f:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

msteams-platform/task-modules-and-cards/cards/Universal-actions-for-adaptive-cards/Overview.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel

Acrolinx Scorecards
We currently enforce a minimum score of 80.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology:

Article
Score
Issues
Scorecard
Processed

msteams-platform/task-modules-and-cards/cards/Universal-actions-for-adaptive-cards/Overview.md
92
6
link
:white_check_mark:

More info about Acrolinx
Use the Acrolinx extension, or sidebar, in Visual Studio Code to check spelling, grammar, style, tone, clarity, and key terminology when you're creating or updating content. For more information, see Use the Visual Studio Code extension to run Acrolinx locally.

Learn Build status updates of commit 5624a0c:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

msteams-platform/task-modules-and-cards/cards/Universal-actions-for-adaptive-cards/Overview.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel

Acrolinx Scorecards
We currently enforce a minimum score of 80.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology:

Article
Score
Issues
Scorecard
Processed

msteams-platform/task-modules-and-cards/cards/Universal-actions-for-adaptive-cards/Overview.md
92
6
link
:white_check_mark:

More info about Acrolinx
Use the Acrolinx extension, or sidebar, in Visual Studio Code to check spelling, grammar, style, tone, clarity, and key terminology when you're creating or updating content. For more information, see Use the Visual Studio Code extension to run Acrolinx locally.

Learn Build status updates of commit 8780015:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

msteams-platform/task-modules-and-cards/cards/Universal-actions-for-adaptive-cards/Overview.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel

Acrolinx Scorecards
We currently enforce a minimum score of 80.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology:

Article
Score
Issues
Scorecard
Processed

msteams-platform/task-modules-and-cards/cards/Universal-actions-for-adaptive-cards/Overview.md
92
6
link
:white_check_mark:

More info about Acrolinx
Use the Acrolinx extension, or sidebar, in Visual Studio Code to check spelling, grammar, style, tone, clarity, and key terminology when you're creating or updating content. For more information, see Use the Visual Studio Code extension to run Acrolinx locally.

Learn Build status updates of commit 8288448:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

msteams-platform/task-modules-and-cards/cards/Universal-actions-for-adaptive-cards/Overview.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel

Learn Build status updates of commit 5dc3cde:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

msteams-platform/task-modules-and-cards/cards/Universal-actions-for-adaptive-cards/Overview.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel

@aosolis - As per document these are the scenario where we can use the Messaging extension. messaging Extension is not supported to Action.Execute. for clarification purpose add the example here.
1.https://learn.microsoft.com/en-us/microsoftteams/platform/messaging-extensions/what-are-messaging-extensions?tabs=dotnet#scenarios-where-message-extensions-are-used
2.https://learn.microsoft.com/en-us/microsoftteams/platform/messaging-extensions/how-to/link-unfurling?tabs=dotnet%2Cadvantages#handle-the-composeextensionquerylink-invoke
Could you please confirm if this is what we need to update in this doc? Or is there anything else want to add?


”Leșnic”, ”Mintia”, ”Muncelu Mare”, ”Muncelu Mic”, ”Runcu Mic” are listed in the drop-down menu

Description:
When user writes ”Leșnic”, ”Mintia”, ”Muncelu Mare”, ”Muncelu Mic”, ”Runcu Mic” the locations appear in the drop-down menu next to the comune and the county which is a part according to the law.
Precondition:
The website is up an running.

Step 2
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 3
Write in the search bar "Mintia"

Expected results
The location appears in the drop-down menu as "Sat Mintia, HUNEDOARA (Vețel)".

Step 4
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 5
Write in the search bar "Muncelu Mare"

Expected results
The location appears in the drop-down menu as "Sat Muncelu Mare, HUNEDOARA (Vețel)".

Step 6
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 7
Write in the search bar "Muncelu Mic"

Expected results
The location appears in the drop-down menu as "Sat Muncelu Mic, HUNEDOARA (Vețel)".

Step 8
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 9
Write in the search bar "Runcu Mic"

Expected results
The location appears in the drop-down menu as "Sat Runcu Mic, HUNEDOARA (Vețel)".


Unable to set options on map?

I tried this
<GoogleMap    options={this.createMapOptions}   ....
where createMapOptions is function defined as:
createMapOptions (maps) {
return {
panControl: false,
mapTypeControl: false,
scrollwheel: false,
styles: [{ stylers: [{ 'saturation': -100 }, { 'gamma': 0.8 }, { 'lightness': 4 }, { 'visibility': 'on' }] }]
}
}

options={this.createMapOptions()}

Thanks @nodegin ! Or you can use an object literal:
<GoogleMap options={{ panControl: false }} />

Also,  6.0.0 is released on npm beta tag now. We also have a new demo page. Feel free to try it:
https://tomchentw.github.io/react-google-maps/

@tomchentw, I've been pulling my hair out trying to figure out how to use geojson with this plugin for the last two days. The last example I could find seems to be quite old, and I can't seem to get it working... What's the best way to get at the map object to use the native map.data.loadGeoJson ? Or do you have a working geoJsonToLatLang component in the most recent version? (Still, converting geojson to latlang seems a bit odd--curious why that decision was made)
Thanks for an excellent library. Just having a bit of trouble figuring out how it works, given the state of documentation right now, what with the new release, I guess. :/


Allow DrawerTransition subclass

Hello,
I just discovered this project and find it very interesting, and very well done. However I'd like to implement a custom transition (sliding left side, with fixed center VC masked by shadow + semi-opaque color), which is not currently possible because the base class is not defined as public.
Would it be possible to declare it public? Also if you think there will be an issue with implementing the transition I'm looking for and have a quick fix that would be very appreciated; if you don't have the time I can send a PR your way when I've had the chance to try.
Thanks a lot for your time,
Stan

Hello,
I read the issue well.
In creating a custom transition, is there a problem where the base class is not defined as public?
It would be nice if you can give me some more details about custom transitions.
Thank you.
Kawoou


Analyze NuGet package dependency

We have a large project which uses a lot of NuGet dependencies. When I run the ApiPort tool all the a NuGet dependencies come up as unresolved assemblies. Is there any way to fix this issue? NuGet dependencies are part of a local NuGet repository.

@shirishwagh83 Currently, APIPort tool doesn't support looking up local NuGet repository to resolve NuGet Package dependencies. You may work around the limitation by copying the NuGet package binaries to the same root directory as your project's binary. Then using APIPort CLI command to pass into the root directory containing all the files with option "-f".

https://github.com/microsoft/dotnet-apiport/issues/853

Closing as API Port was deprecated in favor of binary analysis in .NET Upgrade Assistant.


Where is pretrained word embeddings?

I am also curious about it. I sent the author an email (He is in Facebook now) but now response.

Hi,
Sorry about this, I probably forgot to reply.. Here are the embeddings: https://drive.google.com/open?id=0B23ji47zTOQNUXYzbUVhdDN2ZmM
Best,
Guillaume

Thank you! Is this just English?

Yes. Here are the others:
Dutch: https://drive.google.com/open?id=0B23ji47zTOQNckpFdDVTX1JRYzQ
German: https://drive.google.com/open?id=0B23ji47zTOQNdGdqTkk5QWRTZkU
Spanish: https://drive.google.com/open?id=0B23ji47zTOQNNzd1SDJibm1BWk0
German and Spanish embeddings are pretty good if I remember correctly, but the Dutch ones are bad, I would not use them. I think the Dutch model could easily be 5 F1 better if the embeddings were trained on a bigger corpus (I forgot which corpus we used, but it was really small).

Hi @glample  I am trying to train the model on Windows 10 but i am facing an error for the past 2 months. I also tried to replace the 2 lines in util.py but the error remains the same.... Please help me out i am stuck.
models_path = u"\\\\?\\" + os.path.abspath(u".\\models")
eval_path = u"\\\\?\\" + os.path.abspath(u".\\evaluation")

run train.py --train dataset/eng.train --dev dataset/eng.testa --test dataset/eng.testb
WARNING (theano.sandbox.cuda): The cuda backend is deprecated and will be removed in the next release (v0.10).  Please switch to the gpuarray backend. You can get more information about how to switch at this URL:
 https://github.com/Theano/Theano/wiki/Converting-to-the-new-gpu-back-end%28gpuarray%29

Using gpu device 0: GeForce GT 620M (CNMeM is enabled with initial size: 85.0% of memory, cuDNN not available)
Model location: ./models
Found 23624 unique words (203621 in total)
Found 84 unique characters
Found 17 unique named entity tags
14041 / 3250 / 3453 sentences in train / dev / test.
Saving the mappings to disk...
Compiling...
Starting epoch 0...
50, cost average: 18.960564
100, cost average: 10.907215
150, cost average: 12.533095
200, cost average: 10.245933
250, cost average: 13.977984
300, cost average: 14.902864
350, cost average: 13.581712
400, cost average: 14.167278
450, cost average: 12.335945
500, cost average: 11.382500
550, cost average: 12.137071
600, cost average: 10.413382
650, cost average: 11.004699
700, cost average: 7.299953
750, cost average: 11.655169
800, cost average: 12.359253
850, cost average: 10.576831
900, cost average: 9.708168
950, cost average: 10.565039
ID     NE  Total      O  S-LOC  B-PER  E-PER  S-ORG S-MISC  B-ORG  E-ORG  S-PER  I-ORG  B-LOC  E-LOC B-MISC E-MISC I-MISC  I-PER  I-LOC  Percent
 0      O  42759  42759      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0  100.000
 1  S-LOC   1603   1603      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0    0.000
 2  B-PER   1234   1234      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0    0.000
 3  E-PER   1234   1234      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0    0.000
 4  S-ORG    891    891      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0    0.000
 5 S-MISC    665    665      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0    0.000
 6  B-ORG    450    450      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0    0.000
 7  E-ORG    450    450      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0    0.000
 8  S-PER    608    608      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0    0.000
 9  I-ORG    301    301      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0    0.000
10  B-LOC    234    234      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0    0.000
11  E-LOC    234    234      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0    0.000
12 B-MISC    257    257      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0    0.000
13 E-MISC    257    257      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0    0.000
14 I-MISC     89     89      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0    0.000
15  I-PER     73     73      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0    0.000
16  I-LOC     23     23      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0      0    0.000
42759/51362 (83.25026%)
Traceback (most recent call last):

  File "C:\Users\Acer\tagger-master\train.py", line 220, in <module>
    dev_data, id_to_tag, dico_tags)

  File "utils.py", line 282, in evaluate
    return float(eval_lines[1].strip().split()[-1])

IndexError: list index out of range

@glample you have deleted my comment should i create a new issue?I need your help regarding the error.

@glample  i have created a new issue please have a look https://github.com/glample/tagger/issues/62.

Thank you！

Hi @cosmozhang i wanted to confirm that in order to train the model using these word embeddings the format to run the script is:
python train.py --train dataset/eng.train --dev dataset/eng.testa --test dataset/eng.testb --lr_method adam --tag_scheme iob --pre_emb Skip100 --all_emb 100

@Rabia-Noureen I think so.

@cosmozhang Thanks for the response! One more thing if you are using Windows to run the code please suggest any solution for the issue https://github.com/glample/tagger/issues/62.

I am on Linux and Mac OS. I am not windows for research. :)

Oh okay thanks any ways. :)

@Rabia-Noureen  By having a quick look, it is not a problem related with OS. I might also encouter it later. I did not tried to use the embedings yet.

@cosmozhang I even tried to train the model without word embeddings but i am still facing that issue. Please let me know if you also face it later on, I am new to python so i dont have any idea how to resolve it. I am using the dataset provided with the code https://github.com/glample/tagger/tree/master/dataset.

@Rabia-Noureen Yes, I also encountered it when I am using the embeddings. I am planning to have a look later. Because I am using pytorch now, so I just want to reproduce the results in pytorch.

Pytorch is much more freindly than theano, though I was heavily on Theano before as well. @Rabia-Noureen

Is this code also working well on pytorch without modification? I guess pytorch is not available for Windows OS.

@cosmozhang Please let me know when ever you are able to resolve the error, i am stuck for the past 2 months. I will wait for your response Thanks for the help...

@Rabia-Noureen yes I deleted your previous post. Sorry, but it was not related to the topic "Where is pretrained word embeddings?". I would appreciate if you don't post your issues at the end of issues created by other users on a different topic. I saw your problem, and I really don't know... This is weird, the loss is barely decreasing. I'll be very busy until Friday, then I will have a look at your problem and see if I can help you debug it.

@glample I am sorry for posting it here but i have been trying to get help by creating issues for the past 2 months so i decided to contact you here when i saw your comment yesterday. No problem i will wait for your response regarding debugging the problem. I shall be thankful if you are able to help.
Thanks

@glample i am waiting for your response on my issue please help me debug the problem i am stuck....
Thanks

Can you send me an email with your exact settings, problem, and what you have tried to fix it so far?

@Rabia-Noureen Just do this:
chmod +x evaluation/conlleval

@glample sure i will send you the email please tell me your email address...

@cosmozhang chmod is not working on windows i have tried to find an alternate i found Attrib so i am going to try Attrib +x evaluation/conlleval. Has it solved the issue for you?

<EMAIL_ADDRESS>

@Rabia-Noureen Yes! Why not try to use Linux? It is super convenient to do so.

@glample is this your exact email firstname.lastname@gmail.com?I have tried to send the email but it failed to deliver. Please check it again....

@cosmozhang yes i was thing about it. Some one suggested me to use docker for windows. Do you have any idea can i install the linux environment on docker and use my gpu settings from windows? Or i will have to go through all the installations and python and gpu configurations again on linux? As i dont want to go through all the installations all over again, its very time consuming....

@Rabia-Noureen replace "firstname" and "lastname" by my real first name and last names..

@glample thanks i have just sent the email.

@cosmozhang I have installed ubuntu 16.04 on virtualbox. Now the tagger is working fine but i want to use GoogleNews-vectors-negative300.bin.gz and glove.840B.300d.zip word embeddings in order to train my model.  I am unable to load and use them in Python by extracting with normal extracting software. I get this error with GoogleNews-vectors-negative300.bin.
Skip100 is working fine because its not in compressed form.
Can you please help me how can i extract and use the embeddings? Links are down below
https://drive.google.com/file/d/0B7XkCwpI5KDYNlNUTTlSS21pQmM/edit
https://nlp.stanford.edu/projects/glove/
(my_env) acer@acer:~/tagger$ python train.py --train dataset/eng.train --dev dataset/eng.testa --test dataset/eng.testb --lr_method adam --tag_scheme iob --pre_emb GoogleNews-vectors-negative300.bin --all_emb 300
Model location: ./models/tag_scheme=iob,lower=False,zeros=False,char_dim=25,char_lstm_dim=25,char_bidirect=True,word_dim=100,word_lstm_dim=100,word_bidirect=True,pre_emb=GoogleNews-vectors-negative300.bin,all_emb=False,cap_dim=0,crf=True,dropout=0.5,lr_method=adam
Found 23624 unique words (203621 in total)
Loading pretrained embeddings from GoogleNews-vectors-negative300.bin...
Traceback (most recent call last):
  File "train.py", line 162, in <module>
    ) if not parameters['all_emb'] else None
  File "/home/acer/tagger/loader.py", line 169, in augment_with_pretrained
    for line in codecs.open(ext_emb_path, 'r', 'utf-8')
  File "/home/acer/anaconda2/envs/my_env/lib/python2.7/codecs.py", line 699, in next
    return self.reader.next()
  File "/home/acer/anaconda2/envs/my_env/lib/python2.7/codecs.py", line 630, in next
    line = self.readline()
  File "/home/acer/anaconda2/envs/my_env/lib/python2.7/codecs.py", line 545, in readline
    data = self.read(readsize, firstline=True)
  File "/home/acer/anaconda2/envs/my_env/lib/python2.7/codecs.py", line 492, in read
    newchars, decodedbytes = self.decode(data, self.errors)
UnicodeDecodeError: 'utf8' codec can't decode byte 0x94 in position 0: invalid start byte

@glample  any suggestions please?

What is the content of the GoogleNews-vectors-negative300.bin file? Can you copy the first lines of this file here? If this is a binary file then you can't load it with the tagger. The tagger will only load a text file where you have one word embedding per line.

Its a .iso file not a text file so i cant open it. Then how can i load that file? It has been used in a research study with tagger but i dont know how....

Why not using the embeddings we used in the paper instead?
https://drive.google.com/open?id=0B23ji47zTOQNUXYzbUVhdDN2ZmM

Actually i have read in a paper that glove.840B.300d gives the best results for NLP using tagger so i wanted to use that in order to improve the accuracy. I have extracted this file into a text file but it also has some issue. Please have a look at it. Otherwise if it cant be solved i will have to use Skip100 as you have used.

Is it working with the Skip100 embeddings?
Pretty sure the Glove ones won't be better. What paper are you referring to?

@glample Yes i have tried Skip100, it is working fine.
I am referring to the paper
Optimal Hyperparameters for Deep LSTM-Networks for Sequence Labeling Tasks(page 13), It has used Glove word embeddings
And
Improving sentiment analysis via sentence type classification using BiLSTM-CRF and CNN- This paper has used Google news word embeddings for tagger.

This paper does not compare the Glove embeddings with Skip100, and I doubt it will work better. Anyway. Can you copy-paste here the few first lines of the Glove embeddings text file?

@glample All the pretrained vectors( English, Dutch, German) are skip-n-gram or some are skip-gram and some are skip-n-gram?

Everything is skip-n-gram.

Can you give me the link of the list of corpa for English, Dutch, German, Spanish that you used to train skip-n-gram pre-trained vector?

The embeddings were trained by someone in my lab while I was at CMU (no idea why the dimension is not the same), and I don't have access to the corpora anymore. The corpora are listed in the paper, but I don't know if there is a link to it.

@glample  Thank you for your reply?

@glample Hi author, I've requested for a skip 100 file through your link above, but I don't have permission, I need you to approve it.


Add option to install language dictionaries

@RocketChat/DesktopApp

Closes #535

This PR adds an option to the Spellchecker menu to install a new language dictionary. It works by copying the dictionary to the app's dictionary directory and adding it to the list of available dictionaries.

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

@damon-myers Hey! This is awesome, thanks for you contribution.
We'll review the PR and add comments if there are any changes needed.

@alexbrazier Thanks for catching that!
I corrected the dictionary issue you mentioned, and also tested the changes on Windows. I had only tested them on Linux beforehand, so I also made it so that the install menu option is only shown if you are not using system language dictionaries. (In that case you'd simply install the language via your operating system.)

Hey @damon-myers giving this branch a try, can you provide the dictionary you used to test this? Just checking if we can add this to the current release or if it's going to be postponed into the next version.
Thanks.

@gdelavald Sure thing, I used the dictionary .dic and .aff from here: https://cgit.freedesktop.org/libreoffice/dictionaries/plain/cs_CZ
I used Google to get some Czech text and it seemed to correct that correctly.

any news? it would be a huge improvment

@damon-myers Sorry for the delay on this, we have had some issues testing this branch, on osx and ubuntu we had some exceptions thrown when starting the app.
Could you check the functions that read from directories, since they seem to be causing errors in some cases?

We would love to have this functionality.

@damon-myers can you please resolve the conflicts so I can merge this?

@engelgabriel, of course! On it!

It's been a while since I tried to use different languages in Rocket Chat. There's this PR from one year ago that could fix that but wasn't merged.


Add introspection async benchmark

As mentioned in the issue, this is not a meaningful benchmark atm since the schema types skip all the async logic. (See the noasync annotation on the schema types) because we know those types do not contain any nested async resolvers.
We can still merge them to act as something like a regression test, but best with a comment explaining this.


Add xlim/ylim

Now only x/y scales affect axis limits. But axis should have limits corresponding xlim/ylim in lets-plot

coord... should be used


Debugging works incorrectly in both VSCode and Chrome Dev Tools

Hello there ,
If you set some breakpoints in .ts code the breakpoints will not be hit at the lines you set them. Sometimes the debugger stops at some lines of code at the end of the file you set your breakpoints originally.
You guys based your template project on https://github.com/AngularClass/angular2-webpack-starter. I checked the starter and debugging perfectly works there but not in your codebase.
Could you check that and return the debugging functionality from angular2-webpack-starter to working condition in your code base. As of this moment the debugging looks kinda useless and makes life difficult. I diffed your code vs. angular2-webpack-starter and see that you did not deviate too far. That should not be a big thing to fix.
Thanks a lot!
Dmitry

+1

Hi,
@dbaranau , In the meantime you can change the webpack.dev configuration.
from :   devtool: 'cheap-module-source-map', to  devtool: 'source-map',
http://webpack.github.io/docs/configuration.html#devtool
Thanks,
Ran.


An error is reported when the nested tf.keras.Model subclass model is converted to a tflite file

My environment:
tensorflow-gpu 2.1
windows 10
python 3.7
tensorflow is installed using pip
The following is a simple demo I wrote to illustrate this problem.：
`
import tensorflow as tf
@tf.function
def Hswish(x):
    return x * tf.nn.relu6(x + 3) / 6

tf.keras.utils.get_custom_objects().update({'custom_activation': tf.keras.layers.Activation(Hswish)})

class Conv2d_BN(tf.keras.Model):
    def __init__(self, filters, kernel_size, strides, padding, is_use_bias=True, name=None):
        super(Conv2d_BN, self).__init__(name=name)
        self.conv2d_bn = tf.keras.Sequential([tf.keras.layers.Conv2D(filters, kernel_size, strides=strides,
                                                               padding=padding, use_bias=is_use_bias, kernel_initializer=tf.ones),
                                              tf.keras.layers.BatchNormalization()], name="conv2d_bn")

    def call(self, inputs):
        return self.conv2d_bn(inputs)

class test_model2(tf.keras.Model):
    def __init__(self, layer_name, layer_filters, name="test_model2"):
        super(test_model2, self).__init__(name=name)
        self.convs = []
        for n, f in zip(layer_name, layer_filters):
            if "2" in n:
                continue
            self.convs.append(Conv2d_BN(filters=f, kernel_size=1, strides=(1,1), padding="valid", is_use_bias=False,
                                        name=self.name + n + "/conv1"))
        self.empty_layer = None

    @tf.function
    def call(self, inputs):
        output1 = inputs[0]
        for c_layer in self.convs:
            output1 = c_layer(output1)

        output2 = inputs[1]
        for c_layer in self.convs:
            output2 = c_layer(output2)
        if self.empty_layer is None:
            print("None")
        return output1, output2

layer_name = ["layer1", "layer2", "layer3", "layer4", "layer5"]
layer_filters = [3, 4, 5, 6, 7]
model = test_model2(layer_name, layer_filters)
test_input1 = tf.ones((1, 2, 2, 1))
test_input2 = tf.zeros((1, 2, 2, 1))
input_list = [test_input1, test_input2]
test_output1, test_output2 = model(input_list)
print(test_output1)
print(test_output2)

model._set_inputs(input_list)
converter = tf.lite.TFLiteConverter.from_keras_model(model)
tflite_model = converter.convert()
open("./save4/converted_model.tflite", "wb").write(tflite_model)

`
The following is the error message：
C:\software\Anaconda3\envs\TF2_1_GPU\python.exe C:/Users/stars_ocean/Desktop/TensorFlow_test_folder/new_tf_模型保存_进阶4.py
2020-02-25 17:50:15.295174: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cudart64_101.dll
2020-02-25 17:50:17.612336: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library nvcuda.dll
2020-02-25 17:50:18.876900: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1555] Found device 0 with properties:
pciBusID: 0000:01:00.0 name: GeForce GTX 1050 Ti computeCapability: 6.1
coreClock: 1.62GHz coreCount: 6 deviceMemorySize: 4.00GiB deviceMemoryBandwidth: 104.43GiB/s
2020-02-25 17:50:18.877178: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cudart64_101.dll
2020-02-25 17:50:18.886768: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cublas64_10.dll
2020-02-25 17:50:18.893842: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cufft64_10.dll
2020-02-25 17:50:18.898386: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library curand64_10.dll
2020-02-25 17:50:18.905867: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cusolver64_10.dll
2020-02-25 17:50:18.911441: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cusparse64_10.dll
2020-02-25 17:50:18.924981: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cudnn64_7.dll
2020-02-25 17:50:18.925736: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1697] Adding visible gpu devices: 0
2020-02-25 17:50:18.926051: I tensorflow/core/platform/cpu_feature_guard.cc:142] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2
2020-02-25 17:50:18.926915: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1555] Found device 0 with properties:
pciBusID: 0000:01:00.0 name: GeForce GTX 1050 Ti computeCapability: 6.1
coreClock: 1.62GHz coreCount: 6 deviceMemorySize: 4.00GiB deviceMemoryBandwidth: 104.43GiB/s
2020-02-25 17:50:18.927189: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cudart64_101.dll
2020-02-25 17:50:18.927331: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cublas64_10.dll
2020-02-25 17:50:18.927466: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cufft64_10.dll
2020-02-25 17:50:18.927601: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library curand64_10.dll
2020-02-25 17:50:18.927736: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cusolver64_10.dll
2020-02-25 17:50:18.927875: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cusparse64_10.dll
2020-02-25 17:50:18.928013: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cudnn64_7.dll
2020-02-25 17:50:18.928571: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1697] Adding visible gpu devices: 0
2020-02-25 17:50:19.461309: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1096] Device interconnect StreamExecutor with strength 1 edge matrix:
2020-02-25 17:50:19.461461: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1102]      0
2020-02-25 17:50:19.461550: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1115] 0:   N
2020-02-25 17:50:19.462190: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1241] Created TensorFlow device (/job:localhost/replica:0/task:0/device:GPU:0 with 2985 MB memory) -> physical GPU (device: 0, name: GeForce GTX 1050 Ti, pci bus id: 0000:01:00.0, compute capability: 6.1)
None
None
2020-02-25 17:50:20.090133: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cudnn64_7.dll
2020-02-25 17:50:20.855562: W tensorflow/stream_executor/gpu/redzone_allocator.cc:312] Internal: Invoking GPU asm compilation is supported on Cuda non-Windows platforms only
Relying on driver to perform ptx compilation. This message will be only logged once.
2020-02-25 17:50:20.874969: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cublas64_10.dll
tf.Tensor(
[[[[89.82026 89.82026 89.82026 89.82026 89.82026 89.82026 89.82026]
[89.82026 89.82026 89.82026 89.82026 89.82026 89.82026 89.82026]]
  [[89.82026 89.82026 89.82026 89.82026 89.82026 89.82026 89.82026]
   [89.82026 89.82026 89.82026 89.82026 89.82026 89.82026 89.82026]]]], shape=(1, 2, 2, 7), dtype=float32)
tf.Tensor(
[[[[0. 0. 0. 0. 0. 0. 0.]
   [0. 0. 0. 0. 0. 0. 0.]]

  [[0. 0. 0. 0. 0. 0. 0.]
   [0. 0. 0. 0. 0. 0. 0.]]]], shape=(1, 2, 2, 7), dtype=float32)
None
2020-02-25 17:50:21.348618: I tensorflow/core/grappler/devices.cc:55] Number of eligible GPUs (core count >= 8, compute capability >= 0.0): 0
2020-02-25 17:50:21.348841: I tensorflow/core/grappler/clusters/single_machine.cc:356] Starting new session
2020-02-25 17:50:21.350171: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1555] Found device 0 with properties:
pciBusID: 0000:01:00.0 name: GeForce GTX 1050 Ti computeCapability: 6.1
coreClock: 1.62GHz coreCount: 6 deviceMemorySize: 4.00GiB deviceMemoryBandwidth: 104.43GiB/s
2020-02-25 17:50:21.350427: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cudart64_101.dll
2020-02-25 17:50:21.350557: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cublas64_10.dll
2020-02-25 17:50:21.350687: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cufft64_10.dll
2020-02-25 17:50:21.350815: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library curand64_10.dll
2020-02-25 17:50:21.350943: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cusolver64_10.dll
2020-02-25 17:50:21.351072: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cusparse64_10.dll
2020-02-25 17:50:21.351205: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cudnn64_7.dll
2020-02-25 17:50:21.351611: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1697] Adding visible gpu devices: 0
2020-02-25 17:50:21.351751: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1096] Device interconnect StreamExecutor with strength 1 edge matrix:
2020-02-25 17:50:21.351889: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1102]      0
2020-02-25 17:50:21.351976: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1115] 0:   N
2020-02-25 17:50:21.352364: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1241] Created TensorFlow device (/job:localhost/replica:0/task:0/device:GPU:0 with 2985 MB memory) -> physical GPU (device: 0, name: GeForce GTX 1050 Ti, pci bus id: 0000:01:00.0, compute capability: 6.1)
2020-02-25 17:50:21.378422: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:814] Optimization results for grappler item: graph_to_optimize
2020-02-25 17:50:21.378569: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: Graph size after: 182 nodes (156), 365 edges (338), time = 7.223ms.
2020-02-25 17:50:21.378731: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: Graph size after: 182 nodes (0), 365 edges (0), time = 3.522ms.
2020-02-25 17:50:21.378885: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:814] Optimization results for grappler item: test_model2layer4_conv1_1_conv2d_bn_batch_normalization_2_cond_1_true_940
2020-02-25 17:50:21.379063: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0ms.
2020-02-25 17:50:21.379206: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0ms.
2020-02-25 17:50:21.379345: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:814] Optimization results for grappler item: test_model2layer3_conv1_1_conv2d_bn_batch_normalization_1_cond_false_829
2020-02-25 17:50:21.379524: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0ms.
2020-02-25 17:50:21.379663: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0ms.
2020-02-25 17:50:21.379799: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:814] Optimization results for grappler item: test_model2layer1_conv1_1_conv2d_bn_batch_normalization_cond_1_false_811
2020-02-25 17:50:21.379978: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0.001ms.
2020-02-25 17:50:21.380119: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0ms.
2020-02-25 17:50:21.380258: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:814] Optimization results for grappler item: test_model2layer1_conv1_1_conv2d_bn_batch_normalization_cond_false_764
2020-02-25 17:50:21.380435: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0ms.
2020-02-25 17:50:21.380575: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0ms.
2020-02-25 17:50:21.380712: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:814] Optimization results for grappler item: test_model2layer4_conv1_1_conv2d_bn_batch_normalization_2_cond_false_894
2020-02-25 17:50:21.380889: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0ms.
2020-02-25 17:50:21.381028: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0ms.
2020-02-25 17:50:21.381166: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:814] Optimization results for grappler item: test_model2layer5_conv1_conv2d_bn_batch_normalization_3_cond_1_false_746
2020-02-25 17:50:21.381344: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0ms.
2020-02-25 17:50:21.381482: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0.001ms.
2020-02-25 17:50:21.381624: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:814] Optimization results for grappler item: test_model2layer4_conv1_conv2d_bn_batch_normalization_2_cond_1_false_674
2020-02-25 17:50:21.381805: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0ms.
2020-02-25 17:50:21.381943: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0ms.
2020-02-25 17:50:21.382079: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:814] Optimization results for grappler item: test_model2layer1_conv1_1_conv2d_bn_batch_normalization_cond_true_763
2020-02-25 17:50:21.391040: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0.001ms.
2020-02-25 17:50:21.391189: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0ms.
2020-02-25 17:50:21.391329: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:814] Optimization results for grappler item: test_model2layer4_conv1_1_conv2d_bn_batch_normalization_2_cond_true_893
2020-02-25 17:50:21.391507: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0ms.
2020-02-25 17:50:21.391679: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0ms.
2020-02-25 17:50:21.391817: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:814] Optimization results for grappler item: test_model2layer3_conv1_conv2d_bn_batch_normalization_1_cond_true_550
2020-02-25 17:50:21.391994: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0.001ms.
2020-02-25 17:50:21.392136: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0ms.
2020-02-25 17:50:21.392274: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:814] Optimization results for grappler item: test_model2layer3_conv1_1_conv2d_bn_batch_normalization_1_cond_true_828
2020-02-25 17:50:21.392453: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0ms.
2020-02-25 17:50:21.392591: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0ms.
2020-02-25 17:50:21.392729: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:814] Optimization results for grappler item: test_model2layer5_conv1_1_conv2d_bn_batch_normalization_3_cond_1_true_1005
2020-02-25 17:50:21.392910: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0.001ms.
2020-02-25 17:50:21.393057: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0.001ms.
2020-02-25 17:50:21.393200: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:814] Optimization results for grappler item: test_model2layer1_conv1_conv2d_bn_batch_normalization_cond_true_478
2020-02-25 17:50:21.393374: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0ms.
2020-02-25 17:50:21.393512: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0ms.
2020-02-25 17:50:21.393649: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:814] Optimization results for grappler item: test_model2layer1_conv1_conv2d_bn_batch_normalization_cond_1_false_530
2020-02-25 17:50:21.393827: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0ms.
2020-02-25 17:50:21.393965: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0.001ms.
2020-02-25 17:50:21.394105: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:814] Optimization results for grappler item: test_model2layer1_conv1_1_conv2d_bn_batch_normalization_cond_1_true_810
2020-02-25 17:50:21.394282: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0.001ms.
2020-02-25 17:50:21.394423: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0ms.
2020-02-25 17:50:21.394562: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:814] Optimization results for grappler item: test_model2layer1_conv1_conv2d_bn_batch_normalization_cond_false_479
2020-02-25 17:50:21.394740: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0.001ms.
2020-02-25 17:50:21.406638: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0.001ms.
2020-02-25 17:50:21.406786: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:814] Optimization results for grappler item: test_model2layer3_conv1_conv2d_bn_batch_normalization_1_cond_1_false_602
2020-02-25 17:50:21.406966: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0ms.
2020-02-25 17:50:21.407107: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0ms.
2020-02-25 17:50:21.407247: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:814] Optimization results for grappler item: test_model2layer4_conv1_conv2d_bn_batch_normalization_2_cond_1_true_673
2020-02-25 17:50:21.407427: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0ms.
2020-02-25 17:50:21.407565: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0ms.
2020-02-25 17:50:21.407703: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:814] Optimization results for grappler item: test_model2layer4_conv1_1_conv2d_bn_batch_normalization_2_cond_1_false_941
2020-02-25 17:50:21.407884: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0.001ms.
2020-02-25 17:50:21.408027: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0ms.
2020-02-25 17:50:21.408166: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:814] Optimization results for grappler item: test_model2layer5_conv1_1_conv2d_bn_batch_normalization_3_cond_true_958
2020-02-25 17:50:21.408344: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0.001ms.
2020-02-25 17:50:21.408489: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0ms.
2020-02-25 17:50:21.408634: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:814] Optimization results for grappler item: test_model2layer5_conv1_conv2d_bn_batch_normalization_3_cond_false_695
2020-02-25 17:50:21.408870: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0ms.
2020-02-25 17:50:21.409096: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0ms.
2020-02-25 17:50:21.409238: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:814] Optimization results for grappler item: test_model2layer5_conv1_conv2d_bn_batch_normalization_3_cond_true_694
2020-02-25 17:50:21.409416: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0.001ms.
2020-02-25 17:50:21.409558: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0ms.
2020-02-25 17:50:21.409696: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:814] Optimization results for grappler item: test_model2layer1_conv1_conv2d_bn_batch_normalization_cond_1_true_529
2020-02-25 17:50:21.409874: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0.001ms.
2020-02-25 17:50:21.410015: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0ms.
2020-02-25 17:50:21.410154: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:814] Optimization results for grappler item: test_model2layer5_conv1_1_conv2d_bn_batch_normalization_3_cond_1_false_1006
2020-02-25 17:50:21.410340: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0.001ms.
2020-02-25 17:50:21.410486: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0ms.
2020-02-25 17:50:21.422249: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:814] Optimization results for grappler item: test_model2layer5_conv1_conv2d_bn_batch_normalization_3_cond_1_true_745
2020-02-25 17:50:21.422437: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0.001ms.
2020-02-25 17:50:21.422581: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0ms.
2020-02-25 17:50:21.422722: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:814] Optimization results for grappler item: test_model2layer3_conv1_1_conv2d_bn_batch_normalization_1_cond_1_false_876
2020-02-25 17:50:21.422905: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0.001ms.
2020-02-25 17:50:21.423048: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0ms.
2020-02-25 17:50:21.423187: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:814] Optimization results for grappler item: test_model2layer4_conv1_conv2d_bn_batch_normalization_2_cond_true_622
2020-02-25 17:50:21.423366: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0.001ms.
2020-02-25 17:50:21.423508: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0ms.
2020-02-25 17:50:21.423646: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:814] Optimization results for grappler item: test_model2layer5_conv1_1_conv2d_bn_batch_normalization_3_cond_false_959
2020-02-25 17:50:21.423825: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0ms.
2020-02-25 17:50:21.423965: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0ms.
2020-02-25 17:50:21.424103: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:814] Optimization results for grappler item: test_model2layer3_conv1_conv2d_bn_batch_normalization_1_cond_false_551
2020-02-25 17:50:21.424283: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0.001ms.
2020-02-25 17:50:21.424425: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0.001ms.
2020-02-25 17:50:21.424567: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:814] Optimization results for grappler item: test_model2layer3_conv1_conv2d_bn_batch_normalization_1_cond_1_true_601
2020-02-25 17:50:21.424745: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0.001ms.
2020-02-25 17:50:21.424886: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0ms.
2020-02-25 17:50:21.425024: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:814] Optimization results for grappler item: test_model2layer3_conv1_1_conv2d_bn_batch_normalization_1_cond_1_true_875
2020-02-25 17:50:21.425204: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0ms.
2020-02-25 17:50:21.425344: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0.001ms.
2020-02-25 17:50:21.425487: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:814] Optimization results for grappler item: test_model2layer4_conv1_conv2d_bn_batch_normalization_2_cond_false_623
2020-02-25 17:50:21.425668: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0.001ms.
2020-02-25 17:50:21.425810: I tensorflow/core/grappler/optimizers/meta_optimizer.cc:816]   function_optimizer: function_optimizer did nothing. time = 0ms.
Traceback (most recent call last):
  File "C:/Users/stars_ocean/Desktop/TensorFlow_test_folder/new_tf_模型保存_进阶4.py", line 57, in <module>
	tflite_model = converter.convert()
  File "C:\software\Anaconda3\envs\TF2_1_GPU\lib\site-packages\tensorflow_core\lite\python\lite.py", line 423, in convert
	self._funcs[0], lower_control_flow=False)
  File "C:\software\Anaconda3\envs\TF2_1_GPU\lib\site-packages\tensorflow_core\python\framework\convert_to_constants.py", line 437, in convert_variables_to_constants_v2
	tensor_data = _get_tensor_data(func)
  File "C:\software\Anaconda3\envs\TF2_1_GPU\lib\site-packages\tensorflow_core\python\framework\convert_to_constants.py", line 209, in _get_tensor_data
	data = val_tensor.numpy()
AttributeError: 'Tensor' object has no attribute 'numpy'

Process finished with exit code 1

After debugging, it was found that the problem is that the val_tensor variable at line 209 of convert_to_constants.py is keras_learning_phase, it is not a tensor, so there is no numpy () method.
So in this case, if you want to nest the Model and save it as a tflite file, what should you do?

In addition, I saved the model in SaveModel format and I got the following error:
If using Keras pass *_constraint arguments to layers.
Traceback (most recent call last):
  File "C:/Users/stars_ocean/Desktop/TensorFlow_test_folder/new_tf_模型保存_进阶4.py", line 57, in <module>
    tf.saved_model.save(model, "./save4")
  File "C:\software\Anaconda3\envs\TF2_1_GPU\lib\site-packages\tensorflow_core\python\saved_model\save.py", line 909, in save
    meta_graph_def, saveable_view, signatures, options.namespace_whitelist)
  File "C:\software\Anaconda3\envs\TF2_1_GPU\lib\site-packages\tensorflow_core\python\saved_model\save.py", line 553, in _fill_meta_graph_def
    object_map, resource_map, asset_info = saveable_view.map_resources()
  File "C:\software\Anaconda3\envs\TF2_1_GPU\lib\site-packages\tensorflow_core\python\saved_model\save.py", line 285, in map_resources
    "supported.").format(concrete_function.name, capture))
ValueError: Attempted to save a function b'__inference__wrapped_model_797' which references a symbolic Tensor Tensor("keras_learning_phase:0", shape=(), dtype=bool) that is not a simple constant. This is not supported.

So is it not supported to save nested custom keras models?

I seem to find the problem, the main problem is reflected in the BN layer. I deleted the BN layer and was able to save the model correctly.
import tensorflow as tf

class Conv2d_BN(tf.keras.layers.Layer):
    def __init__(self, filters, kernel_size, strides, padding, is_use_bias=True, name=None):
        super(Conv2d_BN, self).__init__(name=name)
        self.conv2d = tf.keras.layers.Conv2D(filters, kernel_size, strides=strides,
                                             padding=padding, use_bias=is_use_bias, kernel_initializer=tf.ones)
        # self.bn = tf.keras.layers.BatchNormalization(name=name+"/bn")

    @tf.function
    def call(self, inputs):
        output = self.conv2d(inputs)
        # output = self.bn(output)
        return output

class test_model2(tf.keras.Model):
    def __init__(self, layer_name, layer_filters, name="test_model2"):
        super(test_model2, self).__init__(name=name)
        self.convs = []
        for n, f in zip(layer_name, layer_filters):
            if "2" in n:
                continue
            self.convs.append(Conv2d_BN(filters=f, kernel_size=1, strides=(1,1), padding="valid", is_use_bias=False,
                                        name=self.name + "/" + n + "/conv1"))
        self.empty_layer = None

    @tf.function
    def call(self, inputs):
        output1 = inputs[0]
        for c_layer in self.convs:
            output1 = c_layer(output1)

        output2 = inputs[1]
        for c_layer in self.convs:
            output2 = c_layer(output2)
        if self.empty_layer is None:
            print("None")
        return output1, output2

layer_name = ["layer1", "layer2", "layer3", "layer4", "layer5"]
layer_filters = [3, 4, 5, 6, 7]
model = test_model2(layer_name, layer_filters)
test_input1 = tf.ones((1, 2, 2, 1))
test_input2 = tf.zeros((1, 2, 2, 1))
input_list = [test_input1, test_input2]
# tf.keras.backend.set_learning_phase(True)
test_output1, test_output2 = model(input_list)
print(test_output1)
print(test_output2)
model._set_inputs(input_list)

# tf.saved_model.save(model, "./save4")

converter = tf.lite.TFLiteConverter.from_keras_model(model)
tflite_model = converter.convert()
open("./save4/converted_model.tflite", "wb").write(tflite_model)

In addition, I also found that the keras_learning_phase variable also seems to come from the BN layer. As long as I set tf.keras.backend.set_learning_phase (True) or set it to False can avoid this error. But then another error occurred.
import tensorflow as tf

class Conv2d_BN(tf.keras.layers.Layer):
    def __init__(self, filters, kernel_size, strides, padding, is_use_bias=True, name=None):
        super(Conv2d_BN, self).__init__(name=name)
        self.conv2d = tf.keras.layers.Conv2D(filters, kernel_size, strides=strides,
                                             padding=padding, use_bias=is_use_bias, kernel_initializer=tf.ones)
        self.bn = tf.keras.layers.BatchNormalization(name=name+"/bn")

    @tf.function
    def call(self, inputs):
        output = self.conv2d(inputs)
        output = self.bn(output)
        return output

class test_model2(tf.keras.Model):
    def __init__(self, layer_name, layer_filters, name="test_model2"):
        super(test_model2, self).__init__(name=name)
        self.convs = []
        for n, f in zip(layer_name, layer_filters):
            if "2" in n:
                continue
            self.convs.append(Conv2d_BN(filters=f, kernel_size=1, strides=(1,1), padding="valid", is_use_bias=False,
                                        name=self.name + "/" + n + "/conv1"))
        self.empty_layer = None

    @tf.function
    def call(self, inputs):
        output1 = inputs[0]
        for c_layer in self.convs:
            output1 = c_layer(output1)

        output2 = inputs[1]
        for c_layer in self.convs:
            output2 = c_layer(output2)
        if self.empty_layer is None:
            print("None")
        return output1, output2

layer_name = ["layer1", "layer2", "layer3", "layer4", "layer5"]
layer_filters = [3, 4, 5, 6, 7]
model = test_model2(layer_name, layer_filters)
test_input1 = tf.ones((1, 2, 2, 1))
test_input2 = tf.zeros((1, 2, 2, 1))
input_list = [test_input1, test_input2]
tf.keras.backend.set_learning_phase(True)
test_output1, test_output2 = model(input_list)
print(test_output1)
print(test_output2)
model._set_inputs(input_list)

# tf.saved_model.save(model, "./save4")

converter = tf.lite.TFLiteConverter.from_keras_model(model)
tflite_model = converter.convert()
open("./save4/converted_model.tflite", "wb").write(tflite_model)

File "C:\software\Anaconda3\envs\TF2_1_GPU\lib\site-packages\tensorflow_core\lite\python\lite.py", line 423, in convert
   self._funcs[0], lower_control_flow=False)
 File "C:\software\Anaconda3\envs\TF2_1_GPU\lib\site-packages\tensorflow_core\python\framework\convert_to_constants.py", line 622, in convert_variables_to_constants_v2
   converted_input_indices)
 File "C:\software\Anaconda3\envs\TF2_1_GPU\lib\site-packages\tensorflow_core\python\framework\convert_to_constants.py", line 398, in _construct_concrete_function
   new_output_names)
 File "C:\software\Anaconda3\envs\TF2_1_GPU\lib\site-packages\tensorflow_core\python\eager\wrap_function.py", line 631, in function_from_graph_def
   wrapped_import = wrap_function(_imports_graph_def, [])
 File "C:\software\Anaconda3\envs\TF2_1_GPU\lib\site-packages\tensorflow_core\python\eager\wrap_function.py", line 609, in wrap_function
   collections={}),
 File "C:\software\Anaconda3\envs\TF2_1_GPU\lib\site-packages\tensorflow_core\python\framework\func_graph.py", line 978, in func_graph_from_py_func
   func_outputs = python_func(*func_args, **func_kwargs)
 File "C:\software\Anaconda3\envs\TF2_1_GPU\lib\site-packages\tensorflow_core\python\eager\wrap_function.py", line 85, in __call__
   return self.call_with_variable_creator_scope(self._fn)(*args, **kwargs)
 File "C:\software\Anaconda3\envs\TF2_1_GPU\lib\site-packages\tensorflow_core\python\eager\wrap_function.py", line 91, in wrapped
   return fn(*args, **kwargs)
 File "C:\software\Anaconda3\envs\TF2_1_GPU\lib\site-packages\tensorflow_core\python\eager\wrap_function.py", line 629, in _imports_graph_def
   importer.import_graph_def(graph_def, name="")
 File "C:\software\Anaconda3\envs\TF2_1_GPU\lib\site-packages\tensorflow_core\python\util\deprecation.py", line 507, in new_func
   return func(*args, **kwargs)
 File "C:\software\Anaconda3\envs\TF2_1_GPU\lib\site-packages\tensorflow_core\python\framework\importer.py", line 405, in import_graph_def
   producer_op_list=producer_op_list)
 File "C:\software\Anaconda3\envs\TF2_1_GPU\lib\site-packages\tensorflow_core\python\framework\importer.py", line 501, in _import_graph_def_internal
   raise ValueError(str(e))
ValueError: Input 1 of node test_model2/StatefulPartitionedCall/test_model2/layer1/conv1/StatefulPartitionedCall/test_model2/layer1/conv1/bn/cond was passed resource from Func/test_model2/StatefulPartitionedCall/test_model2/layer1/conv1/StatefulPartitionedCall/input/_29:0 incompatible with expected float.

Process finished with exit code 1

This error still comes from the BN layer. What is the correct way to use the BN layer? How can I properly save to tflite format?

I tried to convert the model to SaveModel format, and then converted to tflite format also had the same error.

I tried to write a simple BN layer by myself without any parameters such as renorm, virtual_batch_size. My BN layer only uses fused, and changed tf_utils.smart_cond to if ... else. It can be converted to tflite format normally, so I guess tflite and tf.keras.layers.BatchNormalization are not compatible.
The following is the BN layer code I wrote. I have only briefly tested that its output is normal. I have not tested whether it performs normally during training.
import tensorflow as tf
from tensorflow.python.keras import initializers
from tensorflow.python.keras import regularizers
from tensorflow.python.keras import constraints
from tensorflow.python.framework import dtypes
from tensorflow.python.keras import backend as K
from tensorflow.python.ops import variables as tf_variables
from tensorflow.python.keras.engine.input_spec import InputSpec
from tensorflow.python.keras.utils import tf_utils

class BatchNorm(tf.keras.layers.Layer):
    def __init__(self,
                 axis=-1,
                 momentum=0.99,
                 epsilon=1e-3,
                 center=True,
                 scale=True,
                 beta_initializer='zeros',
                 gamma_initializer='ones',
                 moving_mean_initializer='zeros',
                 moving_variance_initializer='ones',
                 beta_regularizer=None,
                 gamma_regularizer=None,
                 beta_constraint=None,
                 gamma_constraint=None,
                 trainable=True,
                 virtual_batch_size=None,
                 name=None,
                 **kwargs):
        super(BatchNorm, self).__init__(
            name=name, **kwargs)
        if isinstance(axis, list):
            self.axis = axis[:]
        elif isinstance(axis, int):
            self.axis = axis
        else:
            raise TypeError('axis must be int or list, type given: %s'
                            % type(axis))
        self.momentum = momentum
        self.epsilon = epsilon
        self.center = center
        self.scale = scale
        self.beta_initializer = initializers.get(beta_initializer)
        self.gamma_initializer = initializers.get(gamma_initializer)
        self.moving_mean_initializer = initializers.get(moving_mean_initializer)
        self.moving_variance_initializer = initializers.get(
            moving_variance_initializer)
        self.beta_regularizer = regularizers.get(beta_regularizer)
        self.gamma_regularizer = regularizers.get(gamma_regularizer)
        self.beta_constraint = constraints.get(beta_constraint)
        self.gamma_constraint = constraints.get(gamma_constraint)
        self.virtual_batch_size = virtual_batch_size

        self.fused = True
        self._bessels_correction_test_only = True
        self._trainable_var = None
        self.trainable = trainable

    def build(self, input_shape):
        if not input_shape.ndims:
            raise ValueError('Input has undefined rank:', input_shape)
        ndims = len(input_shape)

        # Convert axis to list and resolve negatives
        if isinstance(self.axis, int):
            self.axis = [self.axis]

        for idx, x in enumerate(self.axis):
            if x < 0:
                self.axis[idx] = ndims + x

        # Validate axes
        for x in self.axis:
            if x < 0 or x >= ndims:
                raise ValueError('Invalid axis: %d' % x)
        if len(self.axis) != len(set(self.axis)):
            raise ValueError('Duplicate axis: %s' % self.axis)

        if self.virtual_batch_size is not None:
            if self.virtual_batch_size <= 0:
                raise ValueError('virtual_batch_size must be a positive integer that '
                                 'divides the true batch size of the input Tensor')
            # If using virtual batches, the first dimension must be the batch
            # dimension and cannot be the batch norm axis
            if 0 in self.axis:
                raise ValueError('When using virtual_batch_size, the batch dimension '
                                 'must be 0 and thus axis cannot include 0')

        if self.fused:
            if self.axis == [1]:
                self._data_format = 'NCHW'
            elif self.axis == [3]:
                self._data_format = 'NHWC'
            else:
                raise ValueError('Unsupported axis, fused batch norm only supports '
                                 'axis == [1] or axis == [3]')

        axis_to_dim = {x: input_shape.dims[x].value for x in self.axis}
        for x in axis_to_dim:
            if axis_to_dim[x] is None:
                raise ValueError('Input has undefined `axis` dimension. Input shape: ',
                                 input_shape)
        self.input_spec = InputSpec(ndim=ndims, axes=axis_to_dim)

        if len(axis_to_dim) == 1 and self.virtual_batch_size is None:
            # Single axis batch norm (most common/default use-case)
            param_shape = (list(axis_to_dim.values())[0],)
        else:
            # Parameter shape is the original shape but with 1 in all non-axis dims
            param_shape = [axis_to_dim[i] if i in axis_to_dim else 1 for i in range(ndims)]
            if self.virtual_batch_size is not None:
                # When using virtual batches, add an extra dim at index 1
                param_shape.insert(1, 1)
                for idx, x in enumerate(self.axis):
                    self.axis[idx] = x + 1  # Account for added dimension

        if self.scale:
            self.gamma = self.add_weight(
                name='gamma',
                shape=param_shape,
                dtype=self._param_dtype,
                initializer=self.gamma_initializer,
                regularizer=self.gamma_regularizer,
                constraint=self.gamma_constraint,
                trainable=True,
                experimental_autocast=False)
        else:
            self.gamma = None
            if self.fused:
                self._gamma_const = K.constant(1.0, dtype=self._param_dtype, shape=param_shape)

        if self.center:
            self.beta = self.add_weight(
                name='beta',
                shape=param_shape,
                dtype=self._param_dtype,
                initializer=self.beta_initializer,
                regularizer=self.beta_regularizer,
                constraint=self.beta_constraint,
                trainable=True,
                experimental_autocast=False)
        else:
            self.beta = None
            if self.fused:
                self._beta_const = K.constant(0.0, dtype=self._param_dtype, shape=param_shape)

        # Disable variable partitioning when creating the moving mean and variance
        self.moving_mean = self.add_weight(
            name='moving_mean',
            shape=param_shape,
            dtype=self._param_dtype,
            initializer=self.moving_mean_initializer,
            synchronization=tf_variables.VariableSynchronization.ON_READ,
            trainable=False,
            aggregation=tf_variables.VariableAggregation.MEAN,
            experimental_autocast=False)

        self.moving_variance = self.add_weight(
            name='moving_variance',
            shape=param_shape,
            dtype=self._param_dtype,
            initializer=self.moving_variance_initializer,
            synchronization=tf_variables.VariableSynchronization.ON_READ,
            trainable=False,
            aggregation=tf_variables.VariableAggregation.MEAN,
            experimental_autocast=False)
        self.built = True

    def call(self, inputs, training=None):
        training = self._get_training_value(training)
        if self.fused:
            outputs = self._fused_batch_norm(inputs, training=training)
            return outputs

    def _get_training_value(self, training=None):
        if training is None:
            training = K.learning_phase()

        if isinstance(training, int):
            training = bool(training)
        return training

    def _fused_batch_norm(self, inputs, training):
        """Returns the output of fused batch norm."""
        beta = self.beta if self.center else self._beta_const
        gamma = self.gamma if self.scale else self._gamma_const

        inputs_size = None

        def _fused_batch_norm_training():
            return tf.compat.v1.nn.fused_batch_norm(
                inputs,
                gamma,
                beta,
                epsilon=self.epsilon,
                data_format=self._data_format)

        def _fused_batch_norm_inference():
            return tf.compat.v1.nn.fused_batch_norm(
                inputs,
                gamma,
                beta,
                mean=self.moving_mean,
                variance=self.moving_variance,
                epsilon=self.epsilon,
                is_training=False,
                data_format=self._data_format)

        if training:
            output, mean, variance = _fused_batch_norm_training()
        else:
            output, mean, variance = _fused_batch_norm_inference()

        training_value = tf_utils.constant_value(training)
        if training_value is None:
            if training:
                momentum = self.momentum
            else:
                momentum = 1.0
        else:
            momentum = tf.convert_to_tensor(self.momentum)
        if training_value or training_value is None:
            def mean_update():
                return self._assign_moving_average(self.moving_mean, mean, momentum,
                                                   inputs_size)

            def variance_update():
                return self._assign_moving_average(self.moving_variance, variance,
                                                   momentum, inputs_size)

            self.add_update(mean_update)
            self.add_update(variance_update)

        return output

    def _assign_moving_average(self, variable, value, momentum, inputs_size):
        decay = tf.convert_to_tensor(1.0 - momentum, name='decay')
        if decay.dtype != variable.dtype.base_dtype:
            decay = tf.cast(decay, variable.dtype.base_dtype)
        update_delta = (variable - tf.cast(value, variable.dtype)) * decay
        return tf.compat.v1.assign_sub(variable, update_delta)

    @property
    def _param_dtype(self):
        # Raise parameters of fp16 batch norm to fp32
        if self.dtype == dtypes.float16 or self.dtype == dtypes.bfloat16:
            return dtypes.float32
        else:
            return self.dtype or dtypes.float32

I added my custom BN layer to MobileNetV3 and trained with ImageNet. I found that my custom BN layer did not seem to affect the convergence performance of the model.
However, the original bug has not been resolved, so I do not intend to close this issue.

@TCBocean You have described multiple issues here. Can you please separate the issues so that it will be easy for the community to follow your issue?  It will be easy for us to resolve issues faster if they are focused on one topic in each post.
Also, in each of the post, provide standalone code and also full error trace. Adding links to colab would be very helpful (but required). Also, check with recently tf-nightly, some of the issue related to BatchNorm were resolved in the tf-nightly. Please check the gist here for the last but one code that works without any error. Thanks!

@jvishnuvardhan Thanks for your advice.


Validate serial number as string to work around libxml2 limitation

Feel free to toss this pull request if you don't think it belongs in the main product; we can keep it in a private fork if necessary.
Based on discussion in https://github.com/benoist/xmldsig/issues/31 and https://mail.gnome.org/archives/xml/2008-March/thread.html#00044, I agree with the suggestion in https://github.com/onelogin/ruby-saml/compare/master...mokhan:x509serialnumber?expand=1 to hack the schema for certificate serial number validation in order to work around libxml2's arbitrary restriction on the size of XML Schema integers.
I have tested this against ADFS 2016 and our Ruby SP was able to process an encrypted assertion.

Good heavens that's twice I've made the same mistake. Again, this was supposed to be opened against our fork. (/me shakes fist at Github UI)

instead of 'string' can you check if xs:hexBinary works on your case?

I expect xs:hexBinary won't work correctly, because the serial number is expressed in the XML document in decimal and we don't want libxml2 to interpret it as hex.

👍

Is it possible to push out a new version of the gem with this change, please?

I will release a new version next week with that and other improvements.

Thanks @pitbulk!