Enhancement[Color usage component]: Modify content switcher and make labels sticky

Multiple enhancements: Color usage component
There are two website components involved in this enhancement but the design/UX won't work when they are separated, so I am included both specs in this issue:

Sticky Content switcher enhancement
Why
After auditing similar content switchers on the Language site and considering the design/use in multiple places, some changes were made to streamline.
Where
Right now Carbon's only use of this content switcher is on the Color Usage tab, so this is where the changes are being made.

[ ] Change width of content switcher on Max, Xlg and Lrg breakpoints (now it only spans 8 cols)

[ ] Change divider rules from 24px to 48px (vertically spans whole bar now)

[ ] Remove drop shadow from content switcher

[ ] Remove overflow menu (Liz Holz has complained that an overflow menu should never be used in isolation); the inline code snippets should provide copy functionality anyway.

Addition of a "sticky label" component
Why
This pattern is currently being used on the Language site in several places and it will be in a nice enhancement to our site too. It's very helpful in this situation when there are long scrolling periods where the user loses the heading or table header bar.
Where
Right now we are spec'ing this for sole use on the Color usage tab; but eventually we may want to use this pattern on the Expressive type specs page (see Language site), and anywhere else where a lot of tokens are displays (like themes or Components style tab).
This component is already there on the Color usage tab but it is static:

[ ] Add drop shadow to it on scroll (content will disappear under IT instead of content switcher)

[ ] Make it sticky

Design specs
https://github.com/carbon-design-system/carbon-website/issues/1187

@alisonjoseph these are design modifications that Mike asked for a while ago and still wants. I was going to push this one up the ladder on the priority list now that the type component work is done.


Mitigated vulnerability plexus utils

Added suppression for plexus-utils-3.5.1.jar, because we are not using Filename Handler.  in the a2d2, We are just using exception XmlPullParserException of plexus-util.

This vulnerability appearing in the report is due to a bug in the dependency-check-maven version used in a2d2. please update that plugin and try to remove this suppression.


Support Ubuntu 16.04 for TX2

The default distro installed on the TX2 is Ubuntu 16.04. We currently build everything for Ubuntu 16.04 and are exploring migrating to a docker-based approach using resin. One of the major pain points that we've been struggling with is version incompatibilities between debian's package versions and Ubuntu's equivalent packages.
The biggest problem has been gcc versions. Ubuntu 16.04 uses gcc 5.4, but there is no way to install gcc 5.4 on any version of debian (short of building gcc from source). There are also some difficulties with cuda, opencv, etc. All of the TX2 tooling is built around Ubuntu 16.04.
Supporting a docker image based on Ubuntu 16.04 would make migrating to resin more-or-less seamless for us on the TX2.

@kgreenek, I'm working on adding ubuntu to our base images so it will be available soon. We will let you know once when the ubuntu base images are ready.

@kgreenek we had the same issue... if your blocked feel free to use the base image I created until this PR is merged
jjhughes57/jetson-tx2-ubuntu:xenial3
It has been working without any issue for our TX2s

Ubuntu base images were released https://github.com/resin-io-library/base-images/pull/431!


[output] Microsoft Teams

Background
NOTE: Before filing this issue, please consider the following:
Have you tried pinging us on Slack?
https://streamalert.herokuapp.com/
Are you on the latest version of StreamAlert? yes, this is a feature i would like for 3-1-0
Description
Where i work, we use Microsoft Teams for IM. Therefor, i would like the ability to integrate Microsoft Teams as an output for Streamalert. I have a branch with some work commited currently, but i wanted to see if the community would like this feature?
Current work: jack1902:output/teams
Desired Change
The ability to use Microsoft Teams (teams) as an output for alerts within StreamAlert
High level overview of the desired change or outcome.

Alerts can be sent to teams

Current output looks like this (the ... are just redacted information on the incoming record):


golang

implemented by golang according to the regame-user-service-jsonrpc-api.md

#1

Already have better designs.


llama.github_repo: RuntimeError: This event loop is already running in python

When trying the code at llama_hub/github_rep on Google Collab, I get the error RuntimeError: This event loop is already running.
I fixed it by including this
import nest_asyncio
nest_asyncio.apply()

before my code, however, my guess is that there is some sort of problem in the source code. This issues is a copy to  #315, I am just wondering whether there is a change to make in the code itself.
Thanks in advance.

I also have this issue.

There's no problem in the source code. Notebooks run in an async loop already, so any other code that uses async needs to be enabled using nest_asyncio
@nsthorat just use the code snippet above, it'll be fine 👍


Error in is.call(funBody[[idx]]) && as.character(funBody[[idx]][[1]]) ==  :    'length = 3' in coercion to 'logical(1)

After installing VCFshiny and all required dependencies, i could start it properly.
running the command
VCFshiny::startVCFshiny() returns the following error
VCFshiny::startVCFshiny()
Listening on http://<IP_ADDRESS>:5171
Warning: Error in &&: 'length = 3' in coercion to 'logical(1)'
60: .rs.findBreakpointSteps
59: .rs.findBreakpointSteps
58: .rs.findBreakpointSteps
57: .rs.findBreakpointSteps
56: .rs.findBreakpointSteps
55: .rs.findBreakpointSteps
54: .rs.findBreakpointSteps
53: .rs.findBreakpointSteps
52: .rs.removeBreakpoints
51: registerShinyDebugHook
50: registerDebugHook
49: installExprFunction
48: reactive
45: eventReactive
40: server
3: runApp
2: %>%
1: VCFshiny::startVCFshiny
Error in is.call(funBody[[idx]]) && as.character(funBody[[idx]][[1]]) ==  :
'length = 3' in coercion to 'logical(1)'. the program does open but you can use it

Thank you for asking the question. Is this a warning message or an error message?


Fixes for C++20 support.

Structs with user-declared constructors are no longer considered
aggregates.  Just remove the constructor declaration where applicable.
Bug: chromium:1284275

@pkasting This is merged now.
@a-sully can you do a leveldb roll into Chromium to pick this up?

Done. https://crrev.com/c/3636100 just landed 👍


bug: devel branch sbml model cannot be loaded

Description of the issue:
Run model =loadYeastModel in devel branch would cause an error as below:
Reference to non-existent field 'annotation'.

Error in readSBML (line 34)
if ~isempty(modelSBML.annotation)

Error in readCbModel (line 211)
        model = readSBML(fileName,defaultBound);

Error in loadYeastModel (line 10)
model = readCbModel('../ModelFiles/xml/yeastGEM.xml');

Reproducing these results:
Please attach any code used below (if it's python code replace the word "matlab" with "python". PLEASE DELETE THIS LINE.
model =loadYeastModel
matlab2019b, matlab2018b, latest cobra toolbox

I hereby confirm that I have:

[x] Tested my code with all requirements for running the model
[x] Done this analysis in the master branch of the repository
[x] Checked that a similar issue does not exist already
[x] If needed, asked first in the Gitter chat room about the issue

@BenjaSanchez @edkerk Should we fix this quickly and merge the devel branch to master? Already got several complaints that there is not a functional model  both in master and devel branch.

this issue happens after merging pull request #190, already documented on pull request #248 and #190, so this one will be closed. Sorry for not noticing that before


Page title

This page is titled "Preview: Azure Image Builder overview in Linux", but the article is for both Linux and Windows.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 17a20cc3-d50f-ff9f-d781-ecfeb366807f
Version Independent ID: 12557b74-5318-f7c6-3098-544bc9634c04
Content: Learn about Azure Image Builder (preview) - Azure Virtual Machines
Content Source: articles/virtual-machines/linux/image-builder-overview.md
Service: virtual-machines
Sub-service: imaging
GitHub Login: @cynthn
Microsoft Alias: cynthn

@bubbletroubles Thanks for the feedback! I have assigned the issue to content author to check and update the document as appropriate. We will update you accordingly.

@cynthn Can you please check and add your comments on this doc update request as applicable

Thanks, I'll fix it :)
#please-close


Set correct permissions on ~/.gnupg

Closes issue #86

Merge. Tag master branch as v0.8.3. Continue development and testing.


AI Recorder to record web and desktop workflows to various formats - to explore

recorder —> … bounding box, ml model

Hi @ruthtxh I'm considering closing this for now since I don't have the bandwidth to add this now. If you are adding, the gist is creating a desktop recorder and automate creating the images for visual automation from user's clicks and keystrokes.
Ie need some image process logic (or ML of common UI elements as fallback) to know how far from the click point to crop the screen to use as the element image identifier. I believe it is technical possible to create a usable recorder.
The main downside of such an approach is ambiguity of recording, but users can always fine-tune by snapping on their own the incorrect generated snapshots. If done well, can work for both desktop and web applications.
Maybe I'll assign to you to review with PM if this is worth exploring.

Closing but please ping back if this is still relevant or an issue.


ACCT_IndividualAccounts_TDTM Causing Failed to create Account for Contact first last. Required fields are missing: [Account Name]

Post NPSP upgrade with one to one model configured, when tried to create a contact with firstname and lastname populated it runs into "Failed to create Account for Contact first last. Required fields are missing: [Account Name]" (refer screenshot below)

Here`s the log og the same,
apex-07L5E000001Xc8KUAS.txt
When tried to create a contact with trigger handler for ACCT_IndividualAccounts_TDTM inactivated it contact creation goes smooth but with no account.
Can you please have a look at below npsp settings and Case Number: 16068879 and help us pinpoint what is that is causing the issue post upgrade (Please note we tried deactivating all the custom code and uninstalled other conflicting packages to see if it helps but it didn`t).
Let me know if any more info required

@NikunjDoshi I will take a look at the case. I'm going to close this issue as we prefer that you open a case (as you've done) or post in the Hub and we reserve Github issues only for items that are actionable by our team. I'll follow up with the support agent on your case if I find what is causing the issue.

@NikunjDoshi I see the support agent has already replied. I hope the information he provided was helpful.

That information is not helpful, and have replied to the same.
With all the specific information and access provided will need a specific
actionable reply.
Thanks!
On Mar 29, 2017 8:13 PM, "Judi Sohn"<EMAIL_ADDRESS>wrote:

@NikunjDoshi https://github.com/NikunjDoshi I see the support agent has
already replied. I hope the information he provided was helpful.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/SalesforceFoundation/Cumulus/issues/2546#issuecomment-290112380,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AM7GRyokii71wCmAwuEqZHh6mSU9rhc0ks5rqm4QgaJpZM4MtDjo
.

I can see that our support agent investigated further and found that it was due to a custom workflow rule. Glad to see the issue was resolved.


Search fails if it finds a granule without RelatedUrls

Thank you @encassano for finding this bug!
We're downloading NSIDC-0080 v2 (https://cmr.earthdata.nasa.gov/search/granules.umm_json?short_name=NSIDC-0080&version=2&bounding_box=-180.0,-90.0,180.0,0.0&temporal[]=2023-10-21T00:00:00Z,2023-11-08T00:00:00Z&readable_granule_name=25km_&options%5Breadable_granule_name%5D%5Bpattern%5D=true), and hadn't encountered an error before today. There may be a single granule in the collection missing RelatedUrls.
Traceback (most recent call last):
 File “/data/ecassano/Current_projects/Antarctic_Today/Python/Antarctica_Today/antarctica_today/nsidc_download_Tb_data.py”, line 278, in <module>
  download_new_files(time_start=“2023-10-21")
 File “/data/ecassano/Current_projects/Antarctic_Today/Python/Antarctica_Today/antarctica_today/nsidc_download_Tb_data.py”, line 259, in download_new_files
  results = earthaccess.search_data(
 File “/home/ecassano/miniconda3/envs/antarctica_today/lib/python3.9/site-packages/earthaccess/api.py”, line 113, in search_data
  return query.get_all()
 File “/home/ecassano/miniconda3/envs/antarctica_today/lib/python3.9/site-packages/cmr/queries.py”, line 105, in get_all
  return self.get(self.hits())
 File “/home/ecassano/miniconda3/envs/antarctica_today/lib/python3.9/site-packages/earthaccess/search.py”, line 554, in get
  if self._is_cloud_hosted(json_response[0]):
 File “/home/ecassano/miniconda3/envs/antarctica_today/lib/python3.9/site-packages/earthaccess/search.py”, line 495, in _is_cloud_hosted
  for link in granule[“umm”][“RelatedUrls”]:
KeyError: ‘RelatedUrls’

I propose that _is_cloud_hosted should check if "RelatedUrls" in granule["umm"], and if not, return False.
I'll open a PR!

There may be a single granule in the collection missing RelatedUrls.

The 10 granules selected by the query above features only 1 with RelatedUrls. I don't know why yet. Looking in to how to report this...
Looking 1 year back at the same dates in 2022, all 10 have RelatedUrls.


High number of drops for April - Pos Rep Bot

I have been watching the performance for this bot for the month of April (Pos Rep Bot - 0xd6e19ec6dc98b13ebb5ec24742510845779d9caf439cadec9a5533f8394d435f) and it looks like it has a high number "tx_drops" for BSC chain, this issue might be also extending to the rest of the chains. I would appreciate if you can check it out, and consider sharding as a potential solution to mitigate this.

fixed with version 0.0.7


Exception calling application: module 'gym.envs.box2d' has no attribute 'LunarLander'

It seems that the only working environment is CartPole-v1. If I try to use LunarLander-v2 or something else from Box2D, I get an error, for example:
	server, err := env.FindOrCreate(env.GymServerConfig)
	if err != nil {
		log.Fatal(err)
	}
	defer server.Close()

	environment, err = server.Make("LunarLander-v2", env.WithRecorder())
	if err != nil {
		log.Fatal(err)
	}

Error:
2020/04/10 18:15:13 rpc error: code = Unknown desc = Exception calling application: module 'gym.envs.box2d' has no attribute 'LunarLander'

I wonder whether it's expected behavior or not? Should I perform some extra steps to enable additional environments?

Haven't tried lunar lander yet, let me see whats going on here

Ok just needed to add some deps over in https://github.com/aunum/sphere if you pull the latest sphereproject/gym docker image it should load. Let me know if you have any trouble.

Works, thanks :)


Fixes for removed files

Merging internal link fixes to the Remove branch.

:x: Validation status: errors

File
Status
Preview URL
Details

:x:Error

Details

[Error] Cannot sync git repo to specified state. Please make sure the pull request is mergeable. Details: Git merge results in conflict, repository remote url: https://github.com/MicrosoftDocs/OfficeDocs-Exchange-Test-pr.de-de, working directory: W:\042s-s, target branch: remove, target branch commit: 4bea35b165f40a7871fe6ab5df2e63dce1cb22b2, source branch: remove--fixes, source branch commit: .

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

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

Exchange-Deployments-2013/about-exchange-documentation-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Deployments-2013/configure-exchange-2013-public-folders-for-a-hybrid-deployment-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Deployments-2013/configure-exchange-online-public-folders-for-a-hybrid-deployment-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Deployments-2013/hybrid-deployment-procedures-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Deployments-2013/toc.yml
:white_check_mark:Succeeded
View

Exchange-Server-2013/about-exchange-documentation-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Server-2013/accessing-public-folders-with-outlook-2016-for-mac-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Server-2013/account-setup-in-outlook-for-ios-and-android-using-basic-authentication-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Server-2013/add-a-sip-address-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Server-2013/add-an-address-list-to-or-remove-an-address-list-from-an-offline-address-book-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Server-2013/add-an-auto-attendant-extension-number-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Server-2013/add-an-e-164-number-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Server-2013/add-an-extension-number-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Server-2013/add-ins-for-outlook-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Server-2013/add-mailbox-and-client-access-servers-to-a-sip-uri-dial-plan-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Server-2013/add-or-remove-email-addresses-for-a-mailbox-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Server-2013/add-retention-tags-to-or-remove-retention-tags-from-a-retention-policy-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Server-2013/add-the-federation-mailbox-to-the-ad-rms-super-users-group-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Server-2013/address-book-policies-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Server-2013/address-book-policy-procedures-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Server-2013/address-list-procedures-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Server-2013/address-lists-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Server-2013/administrator-audit-logging-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Server-2013/allow-callers-without-a-caller-id-to-leave-a-voice-message-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Server-2013/allow-message-waiting-indicator-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Server-2013/allow-message-waiting-indicator-mwi-on-a-um-ip-gateway-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Server-2013/allow-message-waiting-indicator-procedures-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Server-2013/allow-or-prevent-a-user-from-creating-call-answering-rules-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Server-2013/allow-or-prevent-users-in-the-same-um-mailbox-policy-from-creating-call-answering-rules-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Server-2013/allow-users-in-the-same-dial-plan-to-receive-faxes-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Server-2013/allow-users-to-see-a-voice-mail-transcript-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Server-2013/allow-voice-mail-users-to-forward-calls-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Server-2013/allowing-users-to-make-calls-procedures-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Server-2013/anti-spam-and-anti-malware-protection-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Server-2013/assign-a-um-mailbox-policy-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Server-2013/assign-an-address-book-policy-to-mail-users-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Server-2013/assign-ediscovery-permissions-in-exchange-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Server-2013/authorize-calls-for-a-group-of-users-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Server-2013/authorize-calls-for-auto-attendant-callers-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Server-2013/authorize-calls-for-users-in-a-dial-plan-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Server-2013/authorize-calls-using-dialing-rules-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Server-2013/backup-restore-and-disaster-recovery-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Server-2013/best-practices-for-configuring-mail-flow-rules-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Server-2013/change-a-sip-address-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Server-2013/change-an-e-164-number-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Server-2013/change-an-extension-number-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Server-2013/change-the-audio-codec-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Server-2013/change-the-settings-of-an-address-book-policy-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Server-2013/change-the-um-dial-plan-exchange-2013-help.md
:white_check_mark:Succeeded
View

Exchange-Server-2013/checklist-deploy-exchange-2013-um-exchange-2013-help.md
:white_check_mark:Succeeded
View

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


urllib3 attempts to use IPv6 even when IPv6 is disabled

This is an issue when running on a server without IPv6 (must be disabled because the network does not support it). Example when connecting to https://graph.facebook.com using requests and IPv4 happens to fail:
HTTPSConnectionPool(host='graph.facebook.com', port=443): Max retries exceeded with url: /v2.5/me/feed (Caused by NewConnectionError('<requests.packages.urllib3.connection.VerifiedHTTPSConnection object at 0x7f4dbd158518>: Failed to establish a new connection: [Errno 97] Address family not supported by protocol',))
Traceback (most recent call last):
  File "/home/lib/python3.4/site-packages/requests/packages/urllib3/connection.py", line 137, in _new_conn
    (self.host, self.port), self.timeout, **extra_kw)
  File "/home/lib/python3.4/site-packages/requests/packages/urllib3/util/connection.py", line 91, in create_connection
    raise err
  File "/home/lib/python3.4/site-packages/requests/packages/urllib3/util/connection.py", line 71, in create_connection
    sock = socket.socket(af, socktype, proto)
  File "/usr/lib/python3.4/socket.py", line 126, in __init__
    _socket.socket.__init__(self, family, type, proto, fileno)
OSError: [Errno 97] Address family not supported by protocol

urllib3 should throw an exception after exhausting all IPv4 options instead of trying (and invariably failing) IPv6.
See closed issue https://github.com/kennethreitz/requests/issues/3084.

---
Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/32805768-urllib3-attempts-to-use-ipv6-even-when-ipv6-is-disabled?utm_campaign=plugin&utm_content=tracker%2F192525&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F192525&utm_medium=issues&utm_source=github).

PR opened to handle suppressing IPv6 DNS results when IPv6 isn't available. I think that suppressing exceptions until we've tried all the DNS entries available is the correct behavior in general; we can't know if we "really can't" establish a connection until we've tried all the options, at which point there's not a good way to tell which exception is the "correct" one to raise.


WIP Russian translation

Hey! I'm now doing a Russian translation of this repository in my own fork (In the pinned repositories first).
Note

I used Vim to edit the file and Notepad++ to convert CR LF line ending to LF one

@vitalkanev That's great :+1:

@vitalkanev, have you done a lot already? I'm just doing the same... :)

@Oire @vitalkanev  You can share a branch in yours repos. Then one of you could make a PR.

@eamanu I will add @Oire as collaborator on my fork

Closing since it's not active (I archived repo)


Plugin: error absolute path in config

Environment

Operating System: Windows_NT
Node Version:     v16.15.1
Nuxt Version:     3.6.5
Nitro Version:    2.5.2
Package Manager<EMAIL_ADDRESS>Builder:          vite
User Config:      devtools, modules, css, alias, quasar
Runtime Modules<EMAIL_ADDRESS><EMAIL_ADDRESS>Build Modules:    -

Reproduction
Start dev server and add a plugin to your project
Describe the bug
Every time a plugin is added to the project and you run npm run dev the plugin is registered with an absolute path in the nuxt.config.ts file.
This results in the plugin not being found or errors like error caught during app initialization TypeError: Cannot redefine property.... To fix this the config file must be manually updated by removing the plugins property or changing the path. But every time you add a new plugin or remove one, all the paths are re-created to absolute paths. When having multiple plugins this can be a daunting task.
I don't know if this is a bug or me missing some configuration. I couldn't find anything about this in the docs except for this issue https://github.com/nuxt/nuxt/issues/22479 but that's been closed without resolution.
Kind regards
David
Additional context
No response
Logs
No response

Would you provide a reproduction? 🙏

Well, I just created a new Nuxt project via npx nuxi@latest init nuxt-base ran npm install then ran npm run dev and added a plugin folder with this plugin.
export default defineNuxtPlugin((NuxtApp) => {
   return {
      provide: {
         $test: (msg: string) => 'Hello ${msg}!'
      }
   }
 })

and the plugin was added to the nuxt.config file automatically like this
plugins: [ '/d:/apps/nuxt-apps/nuxt-base/plugins/myPlugin.ts
Resulting in an error error caught during app initialization TypeError: Cannot redefine property $test
When I remove the plugin property from the config file all works fine and I can use the property $test without a problem in the app.vue file.

That's not Nuxt doing it. Are you sure you don't have an IDE extension that is doing this?

I'm using VsCode and these extensions: Nuxtr, Typescript Vue Plugin (Volar) and Vue Language Features (Volar)

cc: @adhamfarrag could this be Nuxtr?

@danielroe Nuxtr adds plugins to Nuxt config file but we never add them with absolute path.
@artnova-david can you disable Nuxtr and try?

I think it is Nuxtr, when I change my config settings to an object like this
const config = {...}
export default defineNuxtConfig(config)

instead of directly using this
export default defineNuxtConfig({...})

Nuxtr throws an error:

@artnova-david Thanks for bringing this to our attention but this doesn't justify the first error. Can you disable Nuxtr and try again?

I disabled Nuxtr and when adding a plugin the config file was not modified. When re-enabling Nuxtr and adding a plugin to the folder the config file is modified and the plugin is added as:
plugins: [ '/d:/apps/nuxt-apps/nuxt-base/plugins/temp.ts']

It might be worth reconsidering whether to add plugins to the plugins array if they will be auto-scanned anyway. But I'll leave that to you.
I think we can close the issue here.

@adhamfarrag or maybe provide a an option in the settings?


Bump Camel to 2.17.1

Bump Amherst POC to Camel 2.17.1, also adjust context paths so that URIs are correct when viewing Fedora through amherst-apix.  Addresses #26

Obsolete


[wish] Move image to Commons if needed and legal

I often run HarvestTemplates jobs that add "image" properties to thousands of items from the Japanese Wikipedia.
PROBLEM: Half of the images on the Japanese Wikipedia are local, and are not present on Commons. Among those, most are CC-BY-SA so they could be legally moved to Commons.
PROBLEM2: Moving thousands of pictures to Commons is not possible in a batch way. Moving with tools like CommonsHelper is extremely slow and painful, taking many clicks and page load waiting for every single image.
WISH: It would be wonderful if HarvestTemplates could detect that the image:

is on the local Wikipedia
has a license compatible with Commons

and perform the move automatically.
Quite hard to develop, but that would double the number of harvested images! And that would also make useful images available to more Mediawiki projects :-)
Thanks!

Wikidata tool to harvest templates of Wikimedia projects

I'm afraid this is out of the tool's scope.

If this is out of scope, how about at least generating a list of images that would have been used if they had been on Commons? Do that the harvest operator can feed this list into another tool? (maybe MTC!)


Annotation Vector file missing from latest matrixprofile-ts build

Apparently the annotation_vector.py file isn't present when using pip to install matrixprofile-ts. Is the version on PyPi outdated? Would like to use the annotation vector feature if possible.

@nikita-smyrnov it looks like the issue is that annotation_vector isn't included in the init.py file. You can either build the library straight from the GitHub repo, or make a PR to fix the above init.py issue. If you can do that then I'll push to pip.

Fixed the init.py. Tested and should be working properly now.

Merged the PR. Closing the issue.


Update ftdi-vcp-driver to 2.3

Thank you for the contribution. It was merged directly as b9857f47d7beb654892b3ea88e5f127a75f33746 to keep commit history cleaner. Your contribution is still credited to you.


Issue when using atom-python-virtualenv

This problem may be slightly niche, but when using the atom-python-virtualenv package, there is a small interface when using the 'select virtualenv' function. Normally, this yield a menu with all the virtualenvironments in the home folder specified in the atom-python-virtualenv package settings (see  attached screenshot). When using the material theme UI, this menu is illegible (see attached screenshot).
Reproduction Steps:

Install atom-python-virtualenv
Navigate to the 'select virtualenv function' through the prompt
Notice that it is impossible to see the menu

Expected behavior:
Get a drop-down menu of all available virtualenvs
Observed behavior:
A tiny blank line in the top of the editor
Screenshots and GIFs

Atom version: 1.34.0
OS and version: masOS Mojave 10.14.02
Installed packages:
atom-python-virtualenv
autocomplete-python
busy-signal
file-icons
highlight-selected
intentions
language-r
linter
linter-flake8
linter-ui-default
minimap
minimap-find-and-replace
minimap-highlight-selected
platformio-ide-terminal
python-autopep8

I have the exact same issue, and a workaround is just typing the exact name of the virtual environment folder, and it should work as long as you have put in the correct destination in the package settings. This is very late and you've probably either changed your UI theme/figured this out, but just to make sure I guess.


Suggest to loosen the dependency on halo

Hi, your project capa requires "halo==0.0.31" in its dependency. After analyzing the source code, we found that the following versions of halo can also be suitable without affecting your project, i.e., halo 0.0.30. Therefore, we suggest to loosen the dependency on halo from "halo==0.0.31" to "halo>=0.0.30,<=0.0.31" to avoid any possible conflict for importing more packages or for downstream projects that may use capa.
May I pull a request to further loosen the dependency on halo?
By the way, could you please tell us whether such dependency analysis may be potentially helpful for maintaining dependencies easier during your development?

We also give our detailed analysis as follows for your reference:
Your project capa directly uses 1 APIs from package halo.
halo.halo.Halo.__init__

Beginning from the 1 APIs above, 14 functions are then indirectly called, including 8 halo's internal APIs and 6 outsider APIs. The specific call graph is listed as follows (neglecting some repeated function occurrences).
[/mandiant/capa]
+--halo.halo.Halo.__init__
|      +--halo._utils.get_environment
|      |      +--IPython.get_ipython
|      +--halo.halo.Halo.stop
|      |      +--halo.halo.Halo.clear
|      |      |      +--halo.halo.Halo._write
|      |      |      |      +--halo.halo.Halo._check_stream
|      |      +--halo.halo.Halo._show_cursor
|      |      |      +--halo.halo.Halo._check_stream
|      |      |      +--halo.cursor.show
|      |      |      |      +--halo.cursor._CursorInfo.__init__
|      |      |      |      +--ctypes.windll.kernel32.GetStdHandle
|      |      |      |      +--ctypes.windll.kernel32.GetConsoleCursorInfo
|      |      |      |      +--ctypes.windll.kernel32.SetConsoleCursorInfo
|      |      |      |      +--ctypes.byref
|      +--IPython.get_ipython
|      +--atexit.register

We scan halo's versions and observe that during its evolution between any version from [0.0.30] and 0.0.31, the changing functions (diffs being listed below) have none intersection with any function or API we mentioned above (either directly or indirectly called by this project).
diff: 0.0.31(original) 0.0.30
[](no clear difference between the source codes of two versions)

As for other packages, the APIs of IPython, atexit and ctypes are called by halo in the call graph and the dependencies on these packages also stay the same in our suggested versions, thus avoiding any outside conflict.
Therefore, we believe that it is quite safe to loose your dependency on halo from "halo==0.0.31" to "halo>=0.0.30,<=0.0.31". This will improve the applicability of capa and reduce the possibility of any further dependency conflict with other projects.

thanks for the suggestion, but at the time, we're happy with our approach to versioning.


undefined method `interactive_enabled' for Chef::Resource::WindowsTask

Worked in 1.37.0 but not working in 1.38.1

Same issue here.

I am also seeing this in 1.37.1 on windows 2008 R2 with chef 12.4.1.

As of Chef 13 we've moved the windows_task resource into the chef-client itself. There's been a significant amount of work there to resolve many of the outstanding issues with windows_task in this cookbook. Since we have a much improved codebase included in chef-client now we won't be continuing to work on the resource in this cookbook, and will eventually remove it altogether. At this time I'm going to close out this issue, and I'd encourage you to try the latest Chef 13 release. If you still have issues please file them against chef itself.


vassal: 3.7.10 -> 3.7.12

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/vassalengine/vassal/releases.
meta.description for vassal is: A free, open-source boardgame engine
meta.homepage for vassal is: https://vassalengine.org/
Updates performed

Version update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 3.7.11 with grep in /nix/store/3w3grxlwk58s5hhplkclw271al2bl3b1-VASSAL-3.7.11
found 3.7.11 in filename of file in /nix/store/3w3grxlwk58s5hhplkclw271al2bl3b1-VASSAL-3.7.11

Rebuild report (if merged into master) (click to expand)

2 total rebuild path(s)

2 package rebuild(s)

First fifty rebuilds by attrpath

vassal

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/3w3grxlwk58s5hhplkclw271al2bl3b1-VASSAL-3.7.11 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A vassal https://github.com/r-ryantm/nixpkgs/archive/153ae245560d6b456f9720a0dd59e153ee7e3094.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/153ae245560d6b456f9720a0dd59e153ee7e3094#vassal

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/3w3grxlwk58s5hhplkclw271al2bl3b1-VASSAL-3.7.11
ls -la /nix/store/3w3grxlwk58s5hhplkclw271al2bl3b1-VASSAL-3.7.11/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review --extra-nixpkgs-config '{ allowInsecurePredicate = x: true; }' run on x86_64-linux 1

1 package built:

vassal

Maintainer pings
cc @tvestelind for testing.

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://repology.org/project/vassal/versions.
meta.description for vassal is: A free, open-source boardgame engine
meta.homepage for vassal is: https://vassalengine.org/
Updates performed

Version update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 3.7.12 with grep in /nix/store/0f2s391ik5fn1hksy0621wwda43qfkiv-VASSAL-3.7.12
found 3.7.12 in filename of file in /nix/store/0f2s391ik5fn1hksy0621wwda43qfkiv-VASSAL-3.7.12

Rebuild report (if merged into master) (click to expand)

2 total rebuild path(s)

2 package rebuild(s)

First fifty rebuilds by attrpath

vassal

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/0f2s391ik5fn1hksy0621wwda43qfkiv-VASSAL-3.7.12 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A vassal https://github.com/r-ryantm/nixpkgs/archive/045b8e89c4cca8f99b10583409a9663bf5daf93a.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/045b8e89c4cca8f99b10583409a9663bf5daf93a#vassal

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/0f2s391ik5fn1hksy0621wwda43qfkiv-VASSAL-3.7.12
ls -la /nix/store/0f2s391ik5fn1hksy0621wwda43qfkiv-VASSAL-3.7.12/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review --extra-nixpkgs-config '{ allowInsecurePredicate = x: true; }' run on x86_64-linux 1

1 package built:

vassal

Maintainer pings
cc @tvestelind for testing.


Problems after updating to latest Perl6/Rakudo

I built P6 from the master using this script:
cd ~/source/rakudo && git checkout master && git pull &&\n    git checkout $(git describe --abbrev=0 --tags) &&\n    perl Configure.pl --gen-moar --gen-nqp --backends=moar &&\n    make && make install
(Sadly I don't know when I did that last time, but it was definitely also 2018.12 built from master.) After that, my bot that worked fine before starting throwing some errors on startup:
5 (/home/throwaway/source/discord/bot.p6 line 9)
my $api = API::Discord.new(:$token)
6 (/home/throwaway/source/discord/bot.p6 line 11)
await $api.connect
Use of uninitialized value of type Any in string context.
Methods .^name, .perl, .gist, or .say can be used to stringify it to something meaningful.
  in block  at /home/throwaway/source/discord/../p6/p6-api-discord/lib/API/Discord/Connection.pm6 (API::Discord::Connection) line 146
Use of uninitialized value of type Any in string context.
Methods .^name, .perl, .gist, or .say can be used to stringify it to something meaningful.
  in method handle-message at /home/throwaway/source/discord/../p6/p6-api-discord/lib/API/Discord.pm6 (API::Discord) line 184
Use of uninitialized value of type Any in string context.
Methods .^name, .perl, .gist, or .say can be used to stringify it to something meaningful.
  in block  at /home/throwaway/source/discord/../p6/p6-api-discord/lib/API/Discord.pm6 (API::Discord) line 172

Also API::Discord.messages does not trigger anymore, no matter what's happening in the chat. Other things like .trigger-typing still seem to work, although those are triggered by a timer, not as reaction to some discord event. The whole bot can be found here: https://github.com/throwaway-30964/infinite-garbage/blob/master/bot.p6 (it basically takes an input file with text and generates random messages based on it.) Interestingly the basic example from the README (https://github.com/shuppet/p6-api-discord/blob/master/examples/echo-server.p6) seems to work just fine, so maybe some of the other things in the script might cause the problems, although I don't see how and it worked before the update, so maybe a bug in rakudo itself?

Sorry for bothering you, it was some local glitch. I had used -I <path to my local clone of API::DIscord on the command line. Even though it was a fresh checkout of the repo and didn't have local changes, that somehow blew it (maybe cached compiled code or something). Installing the module with zef install . and running the bot without the -I flag fixed the problem.


Update scope.json

Add IBM Scope

Thank you @xEHLE, the change will reflect on the website on the next run.

Ok thanks
I'm @xElkomy not xEHLE
anyway thanks


Documentation for unit tests and test case updates

Updated line 39 of trm.component.ts file... because unit test was throwing error.

Conflicts resolved.


StringUtils: Cannot read properties of undefined (reading 'trim')

Core Library
MSAL.js v2 (@azure/msal-browser)
Core Library Version
11.0.0
Wrapper Library
Not Applicable
Wrapper Library Version
2.34.0
Public or Confidential Client?
Public
Description
MSAL has been working fine previously, all of a sudden the browser is reporting Cannot read properties of undefined (reading 'trim').
I upgraded from 2.33.0 to 2.34.0 to see whether that would fix the issue but it did not. Clearing local storage hasn't helped either.
The stack trace points towards the StringUtils, trimArrayEntries method.
Error Message
StringUtils.ts:93 Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'trim')
    at StringUtils.ts:93:39
    at Array.map ()
    at StringUtils2.trimArrayEntries (StringUtils.ts:93:20)
    at new ScopeSet2 (ScopeSet.ts:22:52)
    at RequestParameterBuilder2.addScopes (RequestParameterBuilder.ts:70:26)
    at AuthorizationCodeClient2. (AuthorizationCodeClient.ts:357:26)
    at step (_tslib.js:75:23)
    at Object.next (_tslib.js:56:53)
    at _tslib.js:49:71
    at new Promise ()
Msal Logs
No response
MSAL Configuration
{
	auth: {
		clientId: import.meta.env.VITE_AUTH_CLIENT_ID,
		authority: `https://login.microsoftonline.com/${
			import.meta.env.VITE_AUTH_TENANT_ID
		}`,
		redirectUri: `${import.meta.env.VITE_AUTH_REDIRECT_URL}`,
		postLogoutRedirectUri: `${
			import.meta.env.VITE_AUTH_POST_LOGOUT_REDIRECT_URL
		}`,
	},
	cache: {
		cacheLocation: "localStorage",
	},
	system: {
		loggerOptions: {
			loggerCallback: (
				level: LogLevel,
				message: string,
				containsPii: boolean
			) => {
				if (containsPii) {
					return;
				}
				switch (level) {
					case LogLevel.Error:
						console.error(message);
						return;
					case LogLevel.Info:
						console.info(message);
						return;
					case LogLevel.Verbose:
						console.debug(message);
						return;
					case LogLevel.Warning:
						console.warn(message);
						return;
					default:
						return;
				}
			},
			logLevel: LogLevel.Verbose,
		},
	},
};

Relevant Code Snippets
Not applicable

Reproduction Steps
1.Attempt to log in
Expected Behavior
The library should redirect the user to MS login page.
Identity Provider
Azure AD / MSA
Browsers Affected (Select all that apply)
Chrome, Firefox, Edge
Regression
No response
Source
External (Customer)

Closing as issue was down to misconfiguration on my end.


skips xml with no classes or 'object'

Wherever xml files with no objects are there, it does not create empty text files

Thank you for your report. Is it a problem? Why do you need empty text files?

Yes, because when there are empty images where no objects are the, you still need to create empty text files corresponding to those images in dataset.

YOLOv5 skips images without text files, so there is no problem. Don't other YOLOs work the same way? @bijonguha

Nope, YOLOv5 code is written in a very matured way and it takes care care of many issues like the one mentioned above, it would also install missing packages instead of throwing error too, that's the kind of mature code it is. But not all the implementation of yolo are like that.

@bijonguha OK, thank you very much, I understand. I will solve this issue.


Implement reader and writer

Reader
High-level consumer.
import ansq

reader = await create_reader(
    topic="foo",
    channel="bar",
    nsqd_tcp_addresses=["nsqd1:4150", "nsqd2:4150"],
)

# Read a single message
message = reader.wait_for_message()
print(message.body)

# Read all messages
async for message in reader.messages():
    print(message.body)

await reader.close()

Writer
High-level producer.
import ansq

writer = await ansq.create_writer(nsqd_tcp_addresses=["nsqd1:4150", "nsqd2:4150"])

# Publish a message
await writer.pub(topic="foo", message="message body")

# Publish multiple messages
await writer.mpub(topic="foo", "message1", "message2")

# Publish a message with a delay for 10 seconds
await writer.pub(topic="foo", message="message body", delay_time=10)

await writer.close()

Codecov Report

Merging #44 (bf3e711) into master (ef734e1) will increase coverage by 0.80%.
The diff coverage is 90.41%.

@@            Coverage Diff             @@
##           master      #44      +/-   ##
==========================================
+ Coverage   83.85%   84.66%   +0.80%
==========================================
  Files          28       33       +5
  Lines        1425     1643     +218
  Branches      145      157      +12
==========================================
+ Hits         1195     1391     +196
- Misses        181      195      +14
- Partials       49       57       +8

Impacted Files
Coverage Δ

ansq/tcp/types/client.py
78.57% <78.57%> (ø)

ansq/tcp/reader.py
80.00% <80.00%> (ø)

ansq/tcp/writer.py
87.09% <87.09%> (ø)

tests/test_reader.py
98.27% <98.27%> (ø)

ansq/__init__.py
100.00% <100.00%> (ø)

ansq/tcp/types/__init__.py
100.00% <100.00%> (ø)

ansq/tcp/types/connection.py
81.48% <100.00%> (+0.86%)
:arrow_up:

tests/test_writer.py
100.00% <100.00%> (ø)

ansq/tcp/connection.py
64.45% <0.00%> (-0.35%)
:arrow_down:

Continue to review full report at Codecov.

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

Thanks @lig!


Cross-modal Retrieval Objective (CMR)

Can you point me to the place in your code where CMR is implemented?  You used CMR + VMLM + SMRM for the pre-training, according to the paper. However, CMR is not part of your supported tasks. Am I missing something?

Now I'm quite confused with how this repository's files are structured. I thought pretrain.py is the file to pre-train your lightningDOT model. However, it does not appear that the _calc_loss function has been called anywhere in the code. However, train_itm.py uses this function several times. Therefore, can you please provide me with specific instructions on how to reproduce lightningDOT paper results?

Is that the case that pretrain.py is only provided to pre-train the UNITER model? If not then what's the usage of train_itm.py?

I totally agree it is indeed confusing since we didn't have time to clean the code. As you may noticed we left lots of other stuff that are not mentioned in the paper such as hard negatives, knowledge distillation and etc.
To answer your question (for pre-training only, I assume you already figured out how to use the loss for fine-tuning), if you trace the definition of pre-trained model (https://github.com/intersun/LightningDOT/blob/5f2880f69ba87b8701ab89348d70ebb11432578c/pretrain.py#L313), you will notice the relevant forward function is defined at https://github.com/intersun/LightningDOT/blob/5f2880f69ba87b8701ab89348d70ebb11432578c/dvl/models/bi_encoder.py#L484.
To answer your second question, pretrain.py is solely for pre-training and train_itm is solely for fine-tuning. Currently I don't have time to merge them, and that is definitely confusing....

I see, thank you. So, essentially your itm implementation is different from the original implementation of itm in UNITER. And yours is based on the CMR in the paper. In fact, itm_loss1 is the same image-retrieval loss, and itm_loss2 is the same text retrieval-loss in the article. Just one more question, what is that ot_loss?

correct... since I implemented fine-tuning first, and later found out changing it into pre-training is not trivial, I ended up implementing pre-training and fine-tuning separately...
OT loss refers to loss proposed in http://proceedings.mlr.press/v119/chen20e.html. I never tried it though so not sure how it will work.


Test cert-manager certificates

Is your feature request related to a problem? Please describe.
We do not currently have any test for checking if cert-manager can successfully get certificates from Let's Encrypt. It has happened before that this functionality has been broken without anyone noticing.
Describe the solution you'd like
We should add test(s) to check that the certificates we request actually become ready.
Describe alternatives you've considered
Additional context
Definition of done:
We have tests that check all certificates.

Sounds good.


About indoor visualization

ScanNet and Sun RGB-D datasets in default pipeline use use_dim=[0, 1, 2]. Such design choice ignores colors of points and result rather poor visualization e.g. in browse_dataset.py. Will it be better to set use_dim=[0, 1, 2, 3, 4, 5] as for S3DISDataset?

Btw, is this instruction valid?
First, with --eval-options 'show=True' 'out_dir=${SHOW_DIR}' I get an error about unknown ''show' parameter. It is probably better with --eval-options show=True out_dir=${SHOW_DIR}.
Second question is about --eval-options show=False in the next line of documentation. I'm getting no visualization in this case as show is now False for dataset.evaluate method. I'm trying on SUN RGB-D if it is important.
Am I missing something?

I think Ziyi is the expert on this @Wuziyi616 . Perhaps he can take a look : )

ScanNet and Sun RGB-D datasets in default pipeline use use_dim=[0, 1, 2]. Such design choice ignores colors of points and result rather poor visualization e.g. in browse_dataset.py. Will it be better to set use_dim=[0, 1, 2, 3, 4, 5] as for S3DISDataset?

I agree that using color results in better visualization quality. I quickly scan over VoteNet paper and there seems to be both colored and non-colored visualization examples. I think users can modify the code if they want to have RGB colors, though this is a bit inflexible.

Btw, is this instruction valid?
First, with --eval-options 'show=True' 'out_dir=${SHOW_DIR}' I get an error about unknown ''show' parameter. It is probably better with --eval-options show=True out_dir=${SHOW_DIR}.
Second question is about --eval-options show=False in the next line of documentation. I'm getting no visualization in this case as show is now False for dataset.evaluate method. I'm trying on SUN RGB-D if it is important.
Am I missing something?

Yes, I believe your --eval-options show=True out_dir=${SHOW_DIR} is correct
That's really a bug. We actually have two show here: whether to visualize result and whether to show it online. If we want to perform offline visualization, we may need to add an additional params (maybe something like online=False)

What do you think? Do you have any good idea?

Close due to inactivity. I think the second issue is solved by a recent PR #1073 .


dynamic tag values for provider validation

I'm looking for a way to pass tag value from command line (using maven in my case), when using something as @PactBroker([...] tags = ["Release"])
Our idea is here to be able to switch from a tag to another depending on the git branch, I tried to get system property propagated there but constant value is needed so I see no easy way.
I also tried removing tag there and use a maven systemPropertyVariables pact.provider.tag for this purpose, but it would only default to latest without considering another value there.

Actually here answer: https://github.com/DiUS/pact-jvm/blob/master/provider/pact-jvm-provider-junit/README.md#using-java-system-properties
Example:
in code:
@PactBroker( ..., tags ="${your.variable.name:latest}")
in command line:
-Dyour.variable.name=prod,master

@sab1l are you able to check if @Artem034's answer works for you?

thanks @Artem034 and @uglyog for clarifying this point, it's all I needed!


Error : a bytes-like object is required, not 'str' : ['dot', '-Tsvg']

Hey If I try your example
with mkdocs material I get this error:
Error : a bytes-like object is required, not 'str' : ['dot', '-Tsvg']
For this code:
{% dot attack_plan.svg
digraph G {
rankdir=LR
Earth [peripheries=2]
Mars
Earth -> Mars
}
%}
I also tried to incooperate it like this:
```graphviz
digraph finite_state_machine {
    rankdir=LR;
    size="8,5"

    node [shape = doublecircle]; S;
    node [shape = point ]; qi

    node [shape = circle];
    qi -> S;
    S  -> q1 [ label = "a" ];
    S  -> S  [ label = "a" ];
    q1 -> S  [ label = "a" ];
    q1 -> q2 [ label = "ddb" ];
    q2 -> q1 [ label = "b" ];
    q2 -> q2 [ label = "b" ];
}

The latest version on PyPI doesn't contain the latest merge for 3.x.
I resolved with:
pip install git+https://github.com/sprin/markdown-inline-graphviz.git#egg=markdown-inline-graphviz

That's not an ideal solution.
I'm not sure if @sprin plans on pushing to PyPI, or if there are other options.  I'm relatively new to Python and I'm reading Package documentation for the first time.

I had the same problem and decided to upload a new package to Pypi.
You can install it with:
pip3 install markdown_inline_graphviz_extension --user
and in your mkdocs.yml file:
markdown_extensions:
  - markdown_inline_graphviz:

For future readers, the fix is a change in the mdx_inline_graphviz.py file
72c72
<                     proc.stdin.write(content)
---
>                     proc.stdin.write(str.encode(content))


Channel doesn't exist?

After upgrading to the latest commit, I started getting this error...
Error detected while processing function <SNR>94_check_changes[4]..<SNR>94_on_changed[13]..<SNR>94_notify_core_channel:
line    6:
E475: Invalid argument: Channel doesn't exist

I reverted back to 5928696 and stopped getting the error.

It's not happening here, would you provide the content's of nvim.log_py3_cm_core after starting neovim with these environment setting?
NVIM_PYTHON_LOG_FILE=nvim.log NVIM_NCM_LOG_LEVEL=INFO nvim

Sure. This generated a few files:
nvim.log_py3_cm_core
2017-03-03 09:23:31,282 [INFO @ cm_start.py:start_channel:55] 9850 - start_channel for cm_core
2017-03-03 09:23:31,283 [INFO @ cm_start.py:setup_neovim:106] 9850 - connecting to neovim server: /tmp/nvim0TZi4P/0
2017-03-03 09:23:31,319 [INFO @ cm_core.py:__init__:69] 9850 - scoper <cm_scopers.html_scoper> imported for html
2017-03-03 09:23:31,319 [INFO @ cm_core.py:__init__:69] 9850 - scoper <cm_scopers.html_scoper> imported for xhtml
2017-03-03 09:23:31,319 [INFO @ cm_core.py:__init__:69] 9850 - scoper <cm_scopers.html_scoper> imported for php
2017-03-03 09:23:31,319 [INFO @ cm_core.py:__init__:69] 9850 - scoper <cm_scopers.html_scoper> imported for blade
2017-03-03 09:23:31,319 [INFO @ cm_core.py:__init__:69] 9850 - scoper <cm_scopers.html_scoper> imported for jinja
2017-03-03 09:23:31,319 [INFO @ cm_core.py:__init__:69] 9850 - scoper <cm_scopers.html_scoper> imported for jinja2
2017-03-03 09:23:31,319 [INFO @ cm_core.py:__init__:69] 9850 - scoper <cm_scopers.html_scoper> imported for vue.html.javascript.css
2017-03-03 09:23:31,319 [INFO @ cm_core.py:__init__:69] 9850 - scoper <cm_scopers.html_scoper> imported for vue
2017-03-03 09:23:31,320 [INFO @ cm_core.py:__init__:69] 9850 - scoper <cm_scopers.markdown_scoper> imported for markdown
2017-03-03 09:23:31,322 [INFO @ cm_core.py:register_source:99] 9850 - registering source: {'priority': 5, 'name': 'cm-bufkeyword', 'channel': {'events': ['CursorHold', 'CursorHoldI', 'BufEnter', 'BufWritePost', 'TextChangedI'], 'type': 'python3', 'module': 'cm_sources.cm_bufkeyword'}, 'enable': True, 'abbreviation': 'Key'}
2017-03-03 09:23:31,323 [INFO @ cm_core.py:__init__:113] 9850 - source <cm_sources.cm_bufkeyword> registered
2017-03-03 09:23:31,323 [INFO @ cm_core.py:register_source:99] 9850 - registering source: {'priority': 6, 'name': 'cm-filepath', 'enable': True, 'cm_refresh_patterns': ['[0-9a-zA-Z_\\-\\.\\\\\\/~\\$]{4,}$', '(\\.[\\/\\\\]|[a-zA-Z]:\\\\|~\\/)[0-9a-zA-Z_\\-\\.\\\\\\/~\\$]*$'], 'channel': {'events': [], 'type': 'python3', 'module': 'cm_sources.cm_filepath'}, 'abbreviation': 'path'}
2017-03-03 09:23:31,324 [INFO @ cm_core.py:__init__:113] 9850 - source <cm_sources.cm_filepath> registered
2017-03-03 09:23:31,324 [INFO @ cm_core.py:register_source:99] 9850 - registering source: {'priority': 9, 'name': 'cm-gocode', 'enable': True, 'scopes': ['go'], 'cm_refresh_patterns': ['\\.(\\w*)$'], 'channel': {'events': [], 'type': 'python3', 'module': 'cm_sources.cm_gocode'}, 'scoping': True, 'abbreviation': 'Go'}
2017-03-03 09:23:31,325 [INFO @ cm_core.py:__init__:113] 9850 - source <cm_sources.cm_gocode> registered
2017-03-03 09:23:31,325 [INFO @ cm_core.py:register_source:99] 9850 - registering source: {'priority': 9, 'name': 'cm-jedi', 'enable': True, 'scopes': ['python'], 'cm_refresh_patterns': ['^(import|from).*?\\s(\\w*)$', '\\.\\w*$', '\\(\\s?(\\w*)$', ',\\s?(\\w*)$'], 'channel': {'events': [], 'type': 'python3', 'module': 'cm_sources.cm_jedi'}, 'scoping': True, 'abbreviation': 'Py'}
2017-03-03 09:23:31,326 [INFO @ cm_core.py:__init__:113] 9850 - source <cm_sources.cm_jedi> registered
2017-03-03 09:23:31,328 [INFO @ cm_core.py:register_source:99] 9850 - registering source: {'priority': 4, 'name': 'cm-keyword-continue', 'cm_refresh_patterns': ['\\s+$', '^$'], 'word_pattern': '\\S+', 'enable': True, 'sort': 0, 'channel': {'events': [], 'type': 'python3', 'module': 'cm_sources.cm_keyword_continue'}, 'abbreviation': ''}
2017-03-03 09:23:31,328 [INFO @ cm_core.py:__init__:113] 9850 - source <cm_sources.cm_keyword_continue> registered
2017-03-03 09:23:31,329 [INFO @ cm_core.py:register_source:99] 9850 - registering source: {'priority': 6, 'name': 'cm-tags', 'channel': {'events': ['WinEnter'], 'type': 'python3', 'module': 'cm_sources.cm_tags'}, 'enable': True, 'abbreviation': 'Tag'}
2017-03-03 09:23:31,329 [INFO @ cm_core.py:__init__:113] 9850 - source <cm_sources.cm_tags> registered
2017-03-03 09:23:31,330 [INFO @ cm_core.py:register_source:99] 9850 - registering source: {'priority': 4, 'name': 'cm-tmux', 'channel': {'events': ['CursorHold', 'CursorHoldI', 'FocusGained', 'BufEnter'], 'type': 'python3', 'module': 'cm_sources.cm_tmux'}, 'enable': True, 'abbreviation': 'Tmux'}
2017-03-03 09:23:31,330 [INFO @ cm_core.py:__init__:113] 9850 - source <cm_sources.cm_tmux> registered
2017-03-03 09:23:31,331 [INFO @ cm_core.py:__init__:120] 9850 - _subscope_detectors: {'xhtml': [<cm_scopers.html_scoper.Scoper object at 0x7fa11f8f2b38>], 'blade': [<cm_scopers.html_scoper.Scoper object at 0x7fa11f8f2b38>], 'vue': [<cm_scopers.html_scoper.Scoper object at 0x7fa11f8f2b38>], 'jinja': [<cm_scopers.html_scoper.Scoper object at 0x7fa11f8f2b38>], 'markdown': [<cm_scopers.markdown_scoper.Scoper object at 0x7fa11f8f2b70>], 'html': [<cm_scopers.html_scoper.Scoper object at 0x7fa11f8f2b38>], 'vue.html.javascript.css': [<cm_scopers.html_scoper.Scoper object at 0x7fa11f8f2b38>], 'php': [<cm_scopers.html_scoper.Scoper object at 0x7fa11f8f2b38>], 'jinja2': [<cm_scopers.html_scoper.Scoper object at 0x7fa11f8f2b38>]}
2017-03-03 09:23:31,331 [INFO @ cm_start.py:start_channel:74] 9850 - starting core, enter event loop
2017-03-03 09:23:31,331 [INFO @ cm_core.py:_start_channel:564] 9850 - starting channels for cm-bufkeyword: ['python3', '/home/rafael/.config/nvim/bundle/nvim-completion-manager/pythonx/cm_start.py', 'channel', 'cm-bufkeyword', 'cm_sources.cm_bufkeyword', '/tmp/nvim0TZi4P/0']
2017-03-03 09:23:31,332 [INFO @ cm_core.py:_start_channel:570] 9850 - pid: 9852
2017-03-03 09:23:31,334 [INFO @ cm_core.py:_start_channel:564] 9850 - starting channels for cm-filepath: ['python3', '/home/rafael/.config/nvim/bundle/nvim-completion-manager/pythonx/cm_start.py', 'channel', 'cm-filepath', 'cm_sources.cm_filepath', '/tmp/nvim0TZi4P/0']
2017-03-03 09:23:31,336 [INFO @ cm_core.py:_start_channel:570] 9850 - pid: 9853
2017-03-03 09:23:31,339 [INFO @ cm_core.py:_start_channel:564] 9850 - starting channels for cm-keyword-continue: ['python3', '/home/rafael/.config/nvim/bundle/nvim-completion-manager/pythonx/cm_start.py', 'channel', 'cm-keyword-continue', 'cm_sources.cm_keyword_continue', '/tmp/nvim0TZi4P/0']
2017-03-03 09:23:31,344 [INFO @ cm_core.py:_start_channel:570] 9850 - pid: 9854
2017-03-03 09:23:31,345 [INFO @ cm_core.py:_start_channel:564] 9850 - starting channels for cm-tags: ['python3', '/home/rafael/.config/nvim/bundle/nvim-completion-manager/pythonx/cm_start.py', 'channel', 'cm-tags', 'cm_sources.cm_tags', '/tmp/nvim0TZi4P/0']
2017-03-03 09:23:31,348 [INFO @ cm_core.py:_start_channel:570] 9850 - pid: 9855
2017-03-03 09:23:31,350 [INFO @ cm_core.py:_start_channel:564] 9850 - starting channels for cm-tmux: ['python3', '/home/rafael/.config/nvim/bundle/nvim-completion-manager/pythonx/cm_start.py', 'channel', 'cm-tmux', 'cm_sources.cm_tmux', '/tmp/nvim0TZi4P/0']
2017-03-03 09:23:31,384 [INFO @ cm_core.py:_start_channel:570] 9850 - pid: 9856
2017-03-03 09:23:32,672 [INFO @ cm_core.py:cm_refresh:335] 9850 - notify_sources_to_refresh calls cnt [0], channels cnt [1]
2017-03-03 09:23:32,725 [INFO @ cm_core.py:_refresh_completions:415] 9850 - _refresh_completions names: [], startcol: 1, matches: []
2017-03-03 09:23:32,725 [INFO @ cm_core.py:_complete:525] 9850 - matches==0, _last_matches==0, ignore
2017-03-03 09:23:33,166 [INFO @ cm_core.py:cm_refresh:335] 9850 - notify_sources_to_refresh calls cnt [0], channels cnt [5]
2017-03-03 09:23:33,218 [INFO @ cm_core.py:_refresh_completions:479] 9850 - _refresh_completions names: ['cm-filepath', 'cm-bufkeyword'], startcol: 1, matches cnt: 0
2017-03-03 09:23:33,218 [INFO @ cm_core.py:_complete:525] 9850 - matches==0, _last_matches==0, ignore
2017-03-03 09:23:33,250 [INFO @ cm_core.py:cm_refresh:335] 9850 - notify_sources_to_refresh calls cnt [0], channels cnt [3]
2017-03-03 09:23:33,301 [INFO @ cm_core.py:_refresh_completions:479] 9850 - _refresh_completions names: ['cm-filepath', 'cm-bufkeyword'], startcol: 2, matches cnt: 0
2017-03-03 09:23:33,302 [INFO @ cm_core.py:_complete:525] 9850 - matches==0, _last_matches==0, ignore
2017-03-03 09:23:33,354 [INFO @ cm_core.py:cm_refresh:335] 9850 - notify_sources_to_refresh calls cnt [1], channels cnt [3]
2017-03-03 09:23:33,405 [INFO @ cm_core.py:_refresh_completions:479] 9850 - _refresh_completions names: ['cm-filepath', 'cm-bufkeyword'], startcol: 3, matches cnt: 0
2017-03-03 09:23:33,405 [INFO @ cm_core.py:_complete:525] 9850 - matches==0, _last_matches==0, ignore
2017-03-03 09:23:33,445 [INFO @ cm_core.py:cm_refresh:335] 9850 - notify_sources_to_refresh calls cnt [1], channels cnt [3]
2017-03-03 09:23:33,501 [INFO @ cm_core.py:_refresh_completions:479] 9850 - _refresh_completions names: ['cm-filepath', 'cm-bufkeyword'], startcol: 1, matches cnt: 1
2017-03-03 09:23:33,745 [INFO @ cm_core.py:cm_refresh:335] 9850 - notify_sources_to_refresh calls cnt [1], channels cnt [3]
2017-03-03 09:23:34,790 [INFO @ cm_core.py:cm_shutdown:586] 9850 - terminating channel cm-filepath
2017-03-03 09:23:34,790 [INFO @ cm_core.py:cm_shutdown:586] 9850 - terminating channel cm-keyword-continue
2017-03-03 09:23:34,790 [INFO @ cm_core.py:cm_shutdown:586] 9850 - terminating channel cm-bufkeyword
2017-03-03 09:23:34,790 [INFO @ cm_core.py:cm_shutdown:586] 9850 - terminating channel cm-tmux
2017-03-03 09:23:34,790 [INFO @ cm_core.py:cm_shutdown:586] 9850 - terminating channel cm-tags
2017-03-03 09:23:35,795 [INFO @ cm_core.py:cm_shutdown:601] 9850 - channel cm-filepath has terminated
2017-03-03 09:23:35,796 [INFO @ cm_core.py:cm_shutdown:601] 9850 - channel cm-keyword-continue has terminated
2017-03-03 09:23:35,796 [INFO @ cm_core.py:cm_shutdown:601] 9850 - channel cm-bufkeyword has terminated
2017-03-03 09:23:35,796 [INFO @ cm_core.py:cm_shutdown:601] 9850 - channel cm-tmux has terminated
2017-03-03 09:23:35,796 [INFO @ cm_core.py:cm_shutdown:601] 9850 - channel cm-tags has terminated

nvim.log_py3_cm_core
2017-03-03 09:23:31,626 [INFO @ cm_start.py:start_channel:55] 9852 - start_channel for cm_sources.cm_bufkeyword
2017-03-03 09:23:31,627 [INFO @ cm_start.py:setup_neovim:106] 9852 - connecting to neovim server: /tmp/nvim0TZi4P/0
2017-03-03 09:23:31,645 [INFO @ cm_bufkeyword.py:refresh_keyword:44] 9852 - refresh_keyword
2017-03-03 09:23:31,648 [INFO @ cm_bufkeyword.py:refresh_keyword:51] 9852 - keyword refresh complete, count: 8
2017-03-03 09:23:31,648 [INFO @ cm_start.py:start_channel:94] 9852 - handler created, entering event loop

nvim.log_py3_cm_core
2017-03-03 09:23:31,666 [INFO @ cm_start.py:start_channel:55] 9853 - start_channel for cm_sources.cm_filepath
2017-03-03 09:23:31,667 [INFO @ cm_start.py:setup_neovim:106] 9853 - connecting to neovim server: /tmp/nvim0TZi4P/0
2017-03-03 09:23:31,681 [INFO @ cm_start.py:start_channel:94] 9853 - handler created, entering event loop

nvim.log_py3_cm_core
2017-03-03 09:23:31,588 [INFO @ cm_start.py:start_channel:55] 9854 - start_channel for cm_sources.cm_keyword_continue
2017-03-03 09:23:31,591 [INFO @ cm_start.py:setup_neovim:106] 9854 - connecting to neovim server: /tmp/nvim0TZi4P/0
2017-03-03 09:23:31,611 [INFO @ cm_start.py:start_channel:94] 9854 - handler created, entering event loop

nvim.log_py3_cm_core
2017-03-03 09:23:31,528 [INFO @ cm_start.py:start_channel:55] 9855 - start_channel for cm_sources.cm_tags
2017-03-03 09:23:31,528 [INFO @ cm_start.py:setup_neovim:106] 9855 - connecting to neovim server: /tmp/nvim0TZi4P/0
2017-03-03 09:23:31,546 [INFO @ cm_start.py:start_channel:94] 9855 - handler created, entering event loop
2017-03-03 09:23:33,168 [INFO @ cm_tags.py:cm_refresh:55] 9855 - matches len 0
2017-03-03 09:23:33,253 [INFO @ cm_tags.py:cm_refresh:55] 9855 - matches len 0
2017-03-03 09:23:33,395 [INFO @ cm_tags.py:cm_refresh:55] 9855 - matches len 0
2017-03-03 09:23:33,489 [INFO @ cm_tags.py:cm_refresh:55] 9855 - matches len 0
2017-03-03 09:23:33,782 [INFO @ cm_tags.py:cm_refresh:55] 9855 - matches len 0

nvim.log_py3_cm_core
2017-03-03 09:23:31,661 [INFO @ cm_start.py:start_channel:55] 9856 - start_channel for cm_sources.cm_tmux
2017-03-03 09:23:31,662 [INFO @ cm_start.py:setup_neovim:106] 9856 - connecting to neovim server: /tmp/nvim0TZi4P/0
2017-03-03 09:23:31,692 [INFO @ cm_start.py:start_channel:94] 9856 - handler created, entering event loop

These log files looks normal. I'm expecting the logs when you reproduce the previous error.

Oh, and I started nvim with NVIM_PYTHON_LOG_FILE=nvim.log NVIM_NCM_LOG_LEVEL=INFO nvim test.txt, where test.txt was:
something I would like to tell you gentlemen

|

(with the cursor being the |)

These are the logs when I reproduce the error. Weird that they look normal... :-/

Oh it's not normal, the NCM process starts and exits in 3 seconds, I'll look into that, thanks

I've add some extra logs, need your help, update to the latest version, and provide the generated log files

nvim.log_py3_cm_core
2017-03-03 10:01:07,563 [INFO @ cm_start.py:start_channel:54] 1220 - start_channel for cm_core
2017-03-03 10:01:07,564 [INFO @ cm_start.py:setup_neovim:105] 1220 - connecting to neovim server: /tmp/nvimgHNKK7/0
2017-03-03 10:01:07,610 [INFO @ cm_core.py:__init__:69] 1220 - scoper <cm_scopers.html_scoper> imported for html
2017-03-03 10:01:07,610 [INFO @ cm_core.py:__init__:69] 1220 - scoper <cm_scopers.html_scoper> imported for xhtml
2017-03-03 10:01:07,610 [INFO @ cm_core.py:__init__:69] 1220 - scoper <cm_scopers.html_scoper> imported for php
2017-03-03 10:01:07,610 [INFO @ cm_core.py:__init__:69] 1220 - scoper <cm_scopers.html_scoper> imported for blade
2017-03-03 10:01:07,610 [INFO @ cm_core.py:__init__:69] 1220 - scoper <cm_scopers.html_scoper> imported for jinja
2017-03-03 10:01:07,610 [INFO @ cm_core.py:__init__:69] 1220 - scoper <cm_scopers.html_scoper> imported for jinja2
2017-03-03 10:01:07,610 [INFO @ cm_core.py:__init__:69] 1220 - scoper <cm_scopers.html_scoper> imported for vue.html.javascript.css
2017-03-03 10:01:07,610 [INFO @ cm_core.py:__init__:69] 1220 - scoper <cm_scopers.html_scoper> imported for vue
2017-03-03 10:01:07,610 [INFO @ cm_core.py:__init__:69] 1220 - scoper <cm_scopers.markdown_scoper> imported for markdown
2017-03-03 10:01:07,613 [INFO @ cm_core.py:register_source:99] 1220 - registering source: {'priority': 5, 'enable': True, 'abbreviation': 'Key', 'name': 'cm-bufkeyword', 'channel': {'module': 'cm_sources.cm_bufkeyword', 'events': ['CursorHold', 'CursorHoldI', 'BufEnter', 'BufWritePost', 'TextChangedI'], 'type': 'python3'}}
2017-03-03 10:01:07,614 [INFO @ cm_core.py:__init__:113] 1220 - source <cm_sources.cm_bufkeyword> registered
2017-03-03 10:01:07,614 [INFO @ cm_core.py:register_source:99] 1220 - registering source: {'priority': 6, 'cm_refresh_patterns': ['[0-9a-zA-Z_\\-\\.\\\\\\/~\\$]{4,}$', '(\\.[\\/\\\\]|[a-zA-Z]:\\\\|~\\/)[0-9a-zA-Z_\\-\\.\\\\\\/~\\$]*$'], 'enable': True, 'abbreviation': 'path', 'name': 'cm-filepath', 'channel': {'module': 'cm_sources.cm_filepath', 'events': [], 'type': 'python3'}}
2017-03-03 10:01:07,616 [INFO @ cm_core.py:__init__:113] 1220 - source <cm_sources.cm_filepath> registered
2017-03-03 10:01:07,616 [INFO @ cm_core.py:register_source:99] 1220 - registering source: {'priority': 9, 'cm_refresh_patterns': ['\\.(\\w*)$'], 'scopes': ['go'], 'enable': True, 'scoping': True, 'abbreviation': 'Go', 'name': 'cm-gocode', 'channel': {'module': 'cm_sources.cm_gocode', 'events': [], 'type': 'python3'}}
2017-03-03 10:01:07,617 [INFO @ cm_core.py:__init__:113] 1220 - source <cm_sources.cm_gocode> registered
2017-03-03 10:01:07,618 [INFO @ cm_core.py:register_source:99] 1220 - registering source: {'priority': 9, 'cm_refresh_patterns': ['^(import|from).*?\\s(\\w*)$', '\\.\\w*$', '\\(\\s?(\\w*)$', ',\\s?(\\w*)$'], 'scopes': ['python'], 'enable': True, 'scoping': True, 'abbreviation': 'Py', 'name': 'cm-jedi', 'channel': {'module': 'cm_sources.cm_jedi', 'events': [], 'type': 'python3'}}
2017-03-03 10:01:07,618 [INFO @ cm_core.py:__init__:113] 1220 - source <cm_sources.cm_jedi> registered
2017-03-03 10:01:07,621 [INFO @ cm_core.py:register_source:99] 1220 - registering source: {'priority': 4, 'cm_refresh_patterns': ['\\s+$', '^$'], 'enable': True, 'word_pattern': '\\S+', 'sort': 0, 'abbreviation': '', 'name': 'cm-keyword-continue', 'channel': {'module': 'cm_sources.cm_keyword_continue', 'events': [], 'type': 'python3'}}
2017-03-03 10:01:07,622 [INFO @ cm_core.py:__init__:113] 1220 - source <cm_sources.cm_keyword_continue> registered
2017-03-03 10:01:07,622 [INFO @ cm_core.py:register_source:99] 1220 - registering source: {'priority': 6, 'enable': True, 'abbreviation': 'Tag', 'name': 'cm-tags', 'channel': {'module': 'cm_sources.cm_tags', 'events': ['WinEnter'], 'type': 'python3'}}
2017-03-03 10:01:07,623 [INFO @ cm_core.py:__init__:113] 1220 - source <cm_sources.cm_tags> registered
2017-03-03 10:01:07,624 [INFO @ cm_core.py:register_source:99] 1220 - registering source: {'priority': 4, 'enable': True, 'abbreviation': 'Tmux', 'name': 'cm-tmux', 'channel': {'module': 'cm_sources.cm_tmux', 'events': ['CursorHold', 'CursorHoldI', 'FocusGained', 'BufEnter'], 'type': 'python3'}}
2017-03-03 10:01:07,624 [INFO @ cm_core.py:__init__:113] 1220 - source <cm_sources.cm_tmux> registered
2017-03-03 10:01:07,625 [INFO @ cm_core.py:__init__:120] 1220 - _subscope_detectors: {'markdown': [<cm_scopers.markdown_scoper.Scoper object at 0x7fad947ccf98>], 'jinja': [<cm_scopers.html_scoper.Scoper object at 0x7fad947ccb70>], 'xhtml': [<cm_scopers.html_scoper.Scoper object at 0x7fad947ccb70>], 'vue': [<cm_scopers.html_scoper.Scoper object at 0x7fad947ccb70>], 'vue.html.javascript.css': [<cm_scopers.html_scoper.Scoper object at 0x7fad947ccb70>], 'php': [<cm_scopers.html_scoper.Scoper object at 0x7fad947ccb70>], 'jinja2': [<cm_scopers.html_scoper.Scoper object at 0x7fad947ccb70>], 'html': [<cm_scopers.html_scoper.Scoper object at 0x7fad947ccb70>], 'blade': [<cm_scopers.html_scoper.Scoper object at 0x7fad947ccb70>]}
2017-03-03 10:01:07,625 [INFO @ cm_start.py:start_channel:73] 1220 - starting core, enter event loop
2017-03-03 10:01:07,625 [INFO @ cm_core.py:_start_channel:564] 1220 - starting channels for cm-bufkeyword: ['python3', '/home/rafael/.config/nvim/bundle/nvim-completion-manager/pythonx/cm_start.py', 'channel', 'cm-bufkeyword', 'cm_sources.cm_bufkeyword', '/tmp/nvimgHNKK7/0']
2017-03-03 10:01:07,627 [INFO @ cm_core.py:_start_channel:570] 1220 - pid: 1221
2017-03-03 10:01:07,628 [INFO @ cm_core.py:_start_channel:564] 1220 - starting channels for cm-filepath: ['python3', '/home/rafael/.config/nvim/bundle/nvim-completion-manager/pythonx/cm_start.py', 'channel', 'cm-filepath', 'cm_sources.cm_filepath', '/tmp/nvimgHNKK7/0']
2017-03-03 10:01:07,637 [INFO @ cm_core.py:_start_channel:570] 1220 - pid: 1222
2017-03-03 10:01:07,639 [INFO @ cm_core.py:_start_channel:564] 1220 - starting channels for cm-keyword-continue: ['python3', '/home/rafael/.config/nvim/bundle/nvim-completion-manager/pythonx/cm_start.py', 'channel', 'cm-keyword-continue', 'cm_sources.cm_keyword_continue', '/tmp/nvimgHNKK7/0']
2017-03-03 10:01:07,649 [INFO @ cm_core.py:_start_channel:570] 1220 - pid: 1223
2017-03-03 10:01:07,650 [INFO @ cm_core.py:_start_channel:564] 1220 - starting channels for cm-tags: ['python3', '/home/rafael/.config/nvim/bundle/nvim-completion-manager/pythonx/cm_start.py', 'channel', 'cm-tags', 'cm_sources.cm_tags', '/tmp/nvimgHNKK7/0']
2017-03-03 10:01:07,656 [INFO @ cm_core.py:_start_channel:570] 1220 - pid: 1224
2017-03-03 10:01:07,658 [INFO @ cm_core.py:_start_channel:564] 1220 - starting channels for cm-tmux: ['python3', '/home/rafael/.config/nvim/bundle/nvim-completion-manager/pythonx/cm_start.py', 'channel', 'cm-tmux', 'cm_sources.cm_tmux', '/tmp/nvimgHNKK7/0']
2017-03-03 10:01:07,668 [INFO @ cm_core.py:_start_channel:570] 1220 - pid: 1225
2017-03-03 10:01:09,042 [INFO @ cm_core.py:cm_refresh:335] 1220 - notify_sources_to_refresh calls cnt [0], channels cnt [5]
2017-03-03 10:01:09,091 [INFO @ cm_core.py:cm_refresh:335] 1220 - notify_sources_to_refresh calls cnt [1], channels cnt [3]
2017-03-03 10:01:09,129 [INFO @ cm_start.py:run_event_loop:158] 1220 - received falsy value[None], exitting
2017-03-03 10:01:10,132 [INFO @ cm_core.py:cm_shutdown:586] 1220 - terminating channel cm-keyword-continue
2017-03-03 10:01:10,132 [INFO @ cm_core.py:cm_shutdown:586] 1220 - terminating channel cm-tmux
2017-03-03 10:01:10,132 [INFO @ cm_core.py:cm_shutdown:586] 1220 - terminating channel cm-filepath
2017-03-03 10:01:10,132 [INFO @ cm_core.py:cm_shutdown:586] 1220 - terminating channel cm-bufkeyword
2017-03-03 10:01:10,132 [INFO @ cm_core.py:cm_shutdown:586] 1220 - terminating channel cm-tags
2017-03-03 10:01:11,138 [INFO @ cm_core.py:cm_shutdown:601] 1220 - channel cm-keyword-continue has terminated
2017-03-03 10:01:11,138 [INFO @ cm_core.py:cm_shutdown:601] 1220 - channel cm-tmux has terminated
2017-03-03 10:01:11,138 [INFO @ cm_core.py:cm_shutdown:601] 1220 - channel cm-filepath has terminated
2017-03-03 10:01:11,138 [INFO @ cm_core.py:cm_shutdown:601] 1220 - channel cm-bufkeyword has terminated
2017-03-03 10:01:11,138 [INFO @ cm_core.py:cm_shutdown:601] 1220 - channel cm-tags has terminated

nvim.log_py3_cm_core
2017-03-03 10:01:07,803 [INFO @ cm_start.py:start_channel:54] 1221 - start_channel for cm_sources.cm_bufkeyword
2017-03-03 10:01:07,804 [INFO @ cm_start.py:setup_neovim:105] 1221 - connecting to neovim server: /tmp/nvimgHNKK7/0
2017-03-03 10:01:07,821 [INFO @ cm_bufkeyword.py:refresh_keyword:44] 1221 - refresh_keyword
2017-03-03 10:01:07,825 [INFO @ cm_bufkeyword.py:refresh_keyword:51] 1221 - keyword refresh complete, count: 9
2017-03-03 10:01:07,825 [INFO @ cm_start.py:start_channel:93] 1221 - handler created, entering event loop
2017-03-03 10:01:10,148 [INFO @ cm_start.py:run_event_loop:158] 1221 - received falsy value[None], exitting

nvim.log_py3_cm_core
2017-03-03 10:01:07,961 [INFO @ cm_start.py:start_channel:54] 1222 - start_channel for cm_sources.cm_filepath
2017-03-03 10:01:07,962 [INFO @ cm_start.py:setup_neovim:105] 1222 - connecting to neovim server: /tmp/nvimgHNKK7/0
2017-03-03 10:01:07,984 [INFO @ cm_start.py:start_channel:93] 1222 - handler created, entering event loop
2017-03-03 10:01:10,133 [INFO @ cm_start.py:run_event_loop:158] 1222 - received falsy value[None], exitting

nvim.log_py3_cm_core
2017-03-03 10:01:07,997 [INFO @ cm_start.py:start_channel:54] 1223 - start_channel for cm_sources.cm_keyword_continue
2017-03-03 10:01:07,997 [INFO @ cm_start.py:setup_neovim:105] 1223 - connecting to neovim server: /tmp/nvimgHNKK7/0
2017-03-03 10:01:08,009 [INFO @ cm_start.py:start_channel:93] 1223 - handler created, entering event loop
2017-03-03 10:01:10,132 [INFO @ cm_start.py:run_event_loop:158] 1223 - received falsy value[None], exitting

nvim.log_py3_cm_core
2017-03-03 10:01:07,941 [INFO @ cm_start.py:start_channel:54] 1224 - start_channel for cm_sources.cm_tags
2017-03-03 10:01:07,945 [INFO @ cm_start.py:setup_neovim:105] 1224 - connecting to neovim server: /tmp/nvimgHNKK7/0
2017-03-03 10:01:07,977 [INFO @ cm_start.py:start_channel:93] 1224 - handler created, entering event loop
2017-03-03 10:01:09,045 [INFO @ cm_tags.py:cm_refresh:55] 1224 - matches len 0
2017-03-03 10:01:09,126 [INFO @ cm_tags.py:cm_refresh:55] 1224 - matches len 0
2017-03-03 10:01:10,133 [INFO @ cm_start.py:run_event_loop:158] 1224 - received falsy value[None], exitting

nvim.log_py3_cm_core
2017-03-03 10:01:07,952 [INFO @ cm_start.py:start_channel:54] 1225 - start_channel for cm_sources.cm_tmux
2017-03-03 10:01:07,952 [INFO @ cm_start.py:setup_neovim:105] 1225 - connecting to neovim server: /tmp/nvimgHNKK7/0
2017-03-03 10:01:08,006 [INFO @ cm_start.py:start_channel:93] 1225 - handler created, entering event loop
2017-03-03 10:01:10,136 [INFO @ cm_start.py:run_event_loop:158] 1225 - received falsy value[None], exitting

Change the command to NVIM_PYTHON_LOG_FILE=nvim.log NVIM_PYTHON_LOG_LEVEL=DEBUG nvim test.txt to get more verbose logging,
It's somehow related to how neovim's python-client, I think

Ok. I used the new command and I'm liking to the logs. I couldn't just copy them here because Github said there were too many characters (I'm glad we're not discussing this over twitter, though).
https://www.dropbox.com/sh/cq41u8afyop4yth/AABwC1bmBLNWzgRk2JgA2WLXa?dl=0]

Thanks!

By the way, the most recent commit that still works fine for me is 03d4c. Which means that whatever is breaking the plugin in my set up was added in d259f

That's kind of a big change in async architecture,
I've rever the changes for now.

I'll stick to the old style which was used before this issue happened. It is more widely used, and well tested.
@rafaeln
Would you help me confirm that NCM is working after I pushed the updates?

The latest commit solved it for me! Thanks!


Why My Performance(get/set) Test so big difference between dynomite and redis

The test results are as follows:
root@dynomite2:~# redis-benchmark -h <IP_ADDRESS> -p 8102 -c 1 -n 10000 -t set
====== SET ======
10000 requests completed in 2.24 seconds
1 parallel clients
3 bytes payload
keep alive: 1
99.95% <= 1 milliseconds
100.00% <= 1 milliseconds
4468.28 requests per second
root@dynomite2:~#
root@dynomite2:~#
root@dynomite2:~#
root@dynomite2:~# redis-benchmark -h <IP_ADDRESS> -p 8102 -c 1 -n 10000 -t get
====== GET ======
10000 requests completed in 2.27 seconds
1 parallel clients
3 bytes payload
keep alive: 1
100.00% <= 1 milliseconds
4411.12 requests per second
root@dynomite2:~#
root@dynomite2:~#
root@dynomite2:~# redis-benchmark -h <IP_ADDRESS> -p 6379 -c 1 -n 10000 -t set
====== SET ======
10000 requests completed in 1.70 seconds
1 parallel clients
3 bytes payload
keep alive: 1
99.95% <= 1 milliseconds
100.00% <= 1 milliseconds
5899.70 requests per second
root@dynomite2:~# redis-benchmark -h <IP_ADDRESS> -p 6379 -c 1 -n 10000 -t get
====== GET ======
10000 requests completed in 1.70 seconds
1 parallel clients
3 bytes payload
keep alive: 1
100.00% <= 1 milliseconds
5892.75 requests per second
For two VMs of openstack, one is for dynomite and redis, one is for redis-benchmark.
Using redis-benchmark to test performance of dynomite, why so big difference? thank you
access dynomite:    get:4411/s    set:4468/s
directly access redis:   get:5892/s    set:5899/s

I am not sure what is your underlying hardware (below OpenStack),  but there is a performance hit in a single node scenario when using Dynomite since it is a proxy layer above Redis. Dynomite is useful for horizontally scaling i.e. when you want to send more traffic than what a single node can handle. Dynomite can distribute the traffic across nodes. For more information: http://techblog.netflix.com/2016/01/dynomite-with-redis-on-aws-benchmarks_14.html
Another note: Redis is a CP (Consistency - Partition Tolerance) system, and Dynomite is an AP (Availability - Partition Tolerance) system.

every node has dynomite process and redis server, so every vm's performance would be affected?
In a single node scenario when using Dynomite, My performance test results of get and set decrease by 10%-40%(different key/value lengths). it is so big gap.

@tulun0551 This kind of performance gap might be expected. Remember that Dynomite is a seperate process there is a hop involved even if it means local host, there is parsing of data, copying, etc. You will really start seeing the advantage of Dynomite when you do multi node. By that it doesnt mean that it will be faster, it means that you will have much larger data in the cluster than a single redis node.

@tulun0551 check also your core affinity in case you are running Redis and Dynomite in the same core. You can take some ideas from the core affinity script.

Thanks. I use 'taskset -c pid' command to set different CPU core binding, but still have no effect. @ipapapa

Thanks. you may be right. @shailesh33

@tulun0551 you get a performance benefit if you have high write OPS. In that case you need multiple Dynomite nodes compared to the vanilla Redis cluster which writes to a single master. Otherwise, @shailesh33 is right, there is always an overhead.

@tulun0551 closing the issue since your question has been answered. If you need more information let us know and we can reopen it.


add noJestGlobals config, if false, no jest-circus globals

Summary

Summed up well by #7571, #4473, #5192 (and possibly some others). With this PR, one can import { expect, describe, it, xtest, fit } from 'jest-circus' etc (all but jest), as well as limit pollution of the global namespace (such that if you don’t import, trying to use a global will error)

test.concurrent and expect's snapshot matchers are still set, just on their imported variables instead of their global aliases like before
the xit, fdescribe etc aliases are now exported like normal, not exclusively set on the global as they were before
expect is re-exported from jest-circus so that everything can be imported from one place.

Some things I wasn't sure of how to change (first PR 👋 ):

how to make sure jest isn't added to the global. I couldn't find a place where global.jest is set, but from what I could tell, it seemed like jest-runtime sets it(?), possibly with constructInjectedModuleParameters()? Was digging a bit of rabbit hole searching from jest-mock to jest-environment to jest-runtime searching where it gets set 😅
Not sure how to change this if that's the right place, but the jest functions do rely on a bunch of globals, so this is in last order to import directly (and likely the most complex).
creating a jest/no-globals entry from which one could import instead (would basically re-export from jest-circus). not sure how entries are done in this repo.
what to do if globalConfig.noJestGlobals = false but projectConfig.noJestGlobals = true? should the project override it if it is set to true specifically (vs. the default of undefined).

I didn't look too much into jest-jasmine2's globals as it is being replaced and because it seems to rely on globals a lot more and isn't as easy to analyze/parse. Might check it out in the future.
Test plan

I also wasn't sure how to test this -- specifically, I need to change the jest config to set noJestGlobals to true for a single test suite for this, but I'm not sure where to actually change the config.
Once I figure out how to do that, I would think the tests would not be much more than the suite I have for jest-without-globals, possibly adding some tests for test.concurrent (test.each probably?) and the expect snapshot matchers, since those are dynamically added by jest-circus
I also was not totally sure how/if some tests should be added to jest-config around validation or something for the new noJestGlobals config.

Codecov Report

Merging #9306 into master will increase coverage by 0.03%.
The diff coverage is 46.15%.

@@            Coverage Diff             @@
##           master    #9306      +/-   ##
==========================================
+ Coverage   64.99%   65.02%   +0.03%
==========================================
  Files         278      278
  Lines       11912    11914       +2
  Branches     2934     2938       +4
==========================================
+ Hits         7742     7747       +5
+ Misses       3539     3536       -3
  Partials      631      631

Impacted Files
Coverage Δ

...us/src/legacy-code-todo-rewrite/jestAdapterInit.ts
0% <0%> (ø)
:arrow_up:

...circus/src/legacy-code-todo-rewrite/jestAdapter.ts
0% <0%> (ø)
:arrow_up:

...-circus/src/legacy-code-todo-rewrite/jestExpect.ts
0% <0%> (ø)
:arrow_up:

packages/jest-circus/src/index.ts
70.12% <100%> (+2.07%)
:arrow_up:

Continue to review full report at Codecov.

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

constructInjectedModuleParameters

Yes that declares the jest parameter of the wrapping function, and _createJestObjectFor and its usage are where it is created. This is definitely a lot less trivial for the jest object, I think the runtime would need a way to specify when the jest global should not be passed into the script and the test framework could use that when calling requireModule with the test path. Seems like it requires a lot of changes to jest-runtime.

creating a jest/no-globals entry

I suppose this would just be a no-globals.js file in packages/jest? Could also be nice to avoid reexporting expect from jest-circus, where it does not really belong

globalConfig.noJestGlobals = false but projectConfig.noJestGlobals = true

I think this could be a setting only on project config since it is specific to how the project code uses Jest? It seems so far you haven't added jest-config properties at all

@SimenB is this feature and approach in general something we want at this stage?

Thanks for the PR @agilgur5, and sorry for never getting to it! I've landed this partially in #9801 (including support for jest). I have a branch locally which also adds a config option to not add it to global. As you note, getting that to work with jasmine is finicky, so I might just bother with circus for now.

Yea was waiting on your guidance before making any iterations 😅 Hopefully my code helped/is helpful in some way


Huge Page with Fork

Hi,
I am dynamically linking tcmalloc by linking tcmalloc.so at compile time. I am trying to use 1GB huge pages with tcmalloc. We have one fork at start of the process. It causes issue in our program and memory gets corrupted.
Commands to reproduce bugs:
$ g++ -std=c++14 sample_program.cpp -o sample.o -lpthread -ltcmalloc_debug
$ TCMALLOC_MEMFS_MALLOC_PATH=/dev/hugepages/ ./sample.o
sample_program.cpp.txt'

I think the issue is that when tcmalloc uses hugepages, after the allocation the child process still maps to the same physical addresses. So any writes from the child/parent end up overwriting the same location. Without hugepages though a write from child/parent ends up doing a CopyOnWrite and allocating new memory so things work fine there.
I don't know if there's a way to change that behaviour with hugepages though.  Can someone familiar with the tcmalloc hugepage allocator confirm this behaviour ?

BTW, here is a simple program that depicts the behaviour I mentioned in the previous comment. This program does following things

Allocates 10 objects of 2MB each
The does a fork, from the parent overwrites the values at the allocated locations.
From the child verifies that the child still sees the old values.

Note that without hugepage allocator it shows the expected behaviour but the check fails when Hugepage are being used.
tcmalloc-test.cc.txt
tcmalloc-test.cc.txt

@alphanso you might want to set TCMALLOC_MEMFS_MAP_PRIVATE=true, this ensures mapping are not shared across parent and child.

Indeed. Thanks. Also private should be default. Would be happy to apply patch that fixes that.


[4.0] [GSB] Record unresolved potential archetypes as delayed requirements.

TBD

@swift-ci please test

LGTM!


cachedImplicit "in the same compilation unit"

when I try to use cachedImplicit I am getting this error
FamilyFormatsSpec.scala:70: macro implementation not found: cachedImplicit
[error] (the most common reason for that is that you cannot use macro implementations in the same compilation run that defines them)
[error]   implicit val SimpleTraitFormat: RootJsonFormat[SimpleTrait] = cachedImplicit

e.g. in this file
https://github.com/fommil/ensime-server/blob/jerk/spray-json-shapeless/src/test/scala/org/ensime/json/FamilyFormatsSpec.scala#L69
I've tried it in a few different places and get the same error each time. Is there some rule I must obey?

By a spooky coincidence I'm also experience this just now ... currently investigating ...

another thing confuses me about this: if I create a cachedImplicit for a LabelledGeneric[T] will that be used by methods that need a LabelledGeneric.Aux[T, H]?

You'd need to cache an instance with the the full type of the Generic, including its refinement (ie. the type Repr = ... which is captured by Generic.Aux[T, R] but discarded by Generic[T].
That makes cachedImplicit quite hard to use here. I think instead you'll have to do something like this,
val gen = {
  def cachedGen = ??? // shadow following implicit defn
  Generic[T]
}
implicit val cachedGen: Generic[T, gen.Repr] = gen // type annotation on implicit cachedGen

Unfortunately I don't think there's anything I can do here to improve on this. The problem is that we need to typecheck Generic[T] before we can use gen.Repr on the LHS of the definition of cachedGen, so a macro on the RHS of that definition isn't going to help us.
Could you give the above a try ... even though it's a bit awkward I think it will have a positive effect on compile times and footprint, so I think it is worth exploring.

Fixed in 619664b1cd6d0ced18aba2a55985c7318968a993.

in the above example, where do I used cachedImplicit?

btw, this is a fuller example of how I'm using this and the thing that I believe is blowing up the presentation compiler https://github.com/ensime/ensime-server/issues/954
sealed trait StringEnum {
    def label: String
  }
case class Flooma(label: String) extends StringEnum
case class Blam(label: String) extends StringEnum

// http://stackoverflow.com/questions/29676204
object SealedTraitImpls {
  class NameHelper[A] {
    def apply[C <: Coproduct, K <: HList]()(
      implicit
      gen: LabelledGeneric.Aux[A, C],
      keys: ops.union.Keys.Aux[C, K],
      toSet: ops.hlist.ToTraversable.Aux[K, Set, Symbol]
    ): Set[String] = toSet(keys()).map(_.name)
  }
  def names[A] = new NameHelper[A]
}

object StringEnumMapping {
  // https://github.com/ensime/ensime-server/issues/954
  val gen = {
    def cachedGen = ???
    LabelledGeneric[StringEnum]
  }
  implicit val cachedGen: LabelledGeneric.Aux[StringEnum, gen.Repr] = gen

  // could probably do with implicit caches for Keys and the Traversable as well
  val values = SealedTraitImpls.names[StringEnum]().toList.sorted
}

btw, the SNAPSHOT cachedImplicit works fine in the spray-json-shapeless code that was failing yesterday (although I'm still not sure if I need it there).

@fommil the example was an alternative to using cachedImplicit in cases where you need to cache an implicit with a refinement (ie. { type Repr = ... } which it would be object-defeating to have to write explicitly as a type annotation on the LHS.

ok. I'm currently refactoring this particular example so that I can cache an implicit NameHelper instead.

I've not got a minimal failing case yet, but the problems started to happen around the time when I started using this NameHelper to list the implementation names. Seems fine to use with the normal compiler.

So I'm not clear ... is that code problematic or not?

yes, problematic code (I'm 99% sure... it's a bloody nightmare formalising an infinite loop in the presentation compiler).

That exact example?

gimme 10 minutes and I'll confirm. It's not exactly the above (the actual StringEnum has about 15 impls in my real code)

I can't reproduce the problem just yet. Getting the presentation compiler into a bad state is apparently very difficult when I want to do it, yet inevitable when I just want it to tell me the damn type at point. :smile:
I'll open a new ticket if I can reproduce reliably (which will most likely be as an ENSIME integration test).

Awesome ... thanks :-)


Compliance checker

it resolves #4
moving compliance checker from https://github.com/mlperf/training
moving PRs: https://github.com/mlperf/training/pull/315 and https://github.com/mlperf/training/pull/361
Things to be done:

[ ] align code to mlperf_logging package
[ ] update the README, to prefer usage through mlperf_logging package

here are some potential issues we might want to track:
#12
#13
#14

@xyhuang PR is ready to be merged

thanks! LGTM


Adding builders of the same "type"

Hi!
In Generator::addBuilder(), this line adds a builder by using its "simple name" as key:
 $this->builders[$builder->getSimpleClassName()] = $builder;

This makes builders not reusable, and I don't see the point here.
For instance, I have a builder for "Model" classes, each has a unique class name, but the body of all classes is pretty much the same. So I have only one builder and and I pass the class name as constructor's parameter. However, I can't easily add my builders to the Generator because of the line mentioned above. I had to override the getSimpleClassName() method, but it is a bit annoying.
WDYT? Any reason to use getSimpleClassName() as key here?

I think we could change this line by :
 $this->builders[] = $builder;

Can you test it ? For me the unique key is never used to get a builder but was only added to be sure you not do twice add with same builder

Looks like this works for me..

Merged in #17


Unable to run any micropython in PyCharm for ESP8266

I was able to install the Micropython plugin into PyCharm 2020.2, however I can't get even the simplest of examples to work.  Example code:
import machine

def test(name) -> None:
    # Use a breakpoint in the code line below to debug your script.
    print(machine.freq())  # Press Ctrl+F8 to toggle the breakpoint.
    machine.freq(160000000)
    print(machine.freq())

if __name__ == '__main__':
    test()

Traceback (most recent call last):
  File "/home/jim/code/PycharmProjects/micropy-d1mini/main.py", line 6, in <module>
    import machine
ModuleNotFoundError: No module named 'machine'

Process finished with exit code 1

What step(s) am I missing to test and upload script to run?

Had the same problem. Is your board being detected? Try to uninstall and install the plugin. Double-check dependencies are being installed without issues.

@MyDataIsReady I am using Linux, so no issues with drivers that I am aware of.  I will try to uninstall the plugin and reinstall.

 You must run it on a micropython enabled microcontroller. Make sure you have enabled micropython support for the project by doing Settings > Languages & Frameworks > MicroPython > Enable MicroPython Support
If you right click on the file you have created you will now have the option to Run 'Flash main.py'. This will flash your script to your connected micropython device so it can run on there, not on your computer.

I agree with @jdjjm about the most likely source of this problem. Thanks @jdjjm for answering!
Closing this issue as answered.

Please reopen this issue to investigate, the plugin failed to identify the actual board esp8266(It doesn't show "Flash main.py", it only shows Run 'main', using the default pyhon3.8). As you have mentioned already on the wiki that this board isn't supported, if in that case you can ignore my request! I am on MacOS 10.14.6 with pycharm 203.5981.165 installed, current mircopython plugin installed.

I have the same problems. I'm using ESP8266 and ESP32. See also https://forum.micropython.org/viewtopic.php?f=15&t=10771

Does the plugin tries to load the wrong board?