Wakatime plugin for Jupyter notebook

I am spending most of my time doing python on jupyter notebook. I would like my coding activity to be quantified, so that I can know if I am meeting my goals as to how many hours I'm putting into learning about ML in python.
I tried to use hydrogen package for atom, but that does not have a good experience
I would want to have a plugin for jupyter notebook.

I found @Wakatime considered once.
https://twitter.com/projectjupyter/status/651564937307811840

Any update on this issue?

I also have this question.

Any update?

Any update?

You can track your time on jupyter notebooks too Just following these step 👍
1 Install waka time chrome plugin WakaTime
2 Paste you api key
3 Bingo!!

Great news! Thanks

You can configure wakatime chrome extension to monitor for only whitelisted sites and add jupyter localhost URL to wakatime list of whitelisted sites. But this is also not that reliable as it also includes your idle time.

How about when using Jupyter Notebook from VS Code?

How about when using Jupyter Notebook from VS Code?

Wanted for this use case.

How about when using Jupyter Notebook from VS Code?

Wanted for this use case, too.

If you guys use Jupyter Notebook on VSCODE them will get time coding.

Any new on Jupyter Notebook integration or maybe even a DeepNote integration

using the plugin you can whitelist urls and suffix with @@ProjectName
example
http://localhost:8888@@Jupyter
Browser will be the editor, language will be listed as other


Crash on mod update: recipe in favorites no longer exists

Describe the Bug
Game crashes after loading mod update with recipe in favorites that no longer exists.
To Reproduce
Steps to reproduce the behavior:

Add recipe X to favorites
Change mod so that this recipe X no longer exists
Load game again
Game crashes

Fix for the bug
This change fixed it for me:
Update the function update_list_box  in util.lua to this:
function gui_util.update_list_box(pane, source_tbl, player_data, iterator, options)
  local i = 0
  local children = pane.children
  local add = pane.add
  for k, obj_ident in iterator(source_tbl) do
    local obj_data_class = database[obj_ident.class]
    if obj_data_class == nill then
      goto continue
    end
    local obj_data = obj_data_class[obj_ident.name]
    local info = formatter(obj_data, player_data, options)
    if info then
      i = i + 1
      local style = info.researched and "rb_list_box_item" or "rb_unresearched_list_box_item"
      local item = children[i]
      if item then
        item.style = style
        item.caption = info.caption
        item.tooltip = info.tooltip
        item.enabled = info.num_interactions > 0
        gui.update_tags(item, { context = { class = obj_ident.class, name = obj_ident.name } })
      else
        add({
          type = "button",
          style = style,
          caption = info.caption,
          tooltip = info.tooltip,
          enabled = info.num_interactions > 0,
          mouse_button_filter = { "left", "middle" },
          tags = {
            [script.mod_name] = {
              context = { class = obj_ident.class, name = obj_ident.name },
              flib = {
                on_click = { gui = "search", action = "open_object" },
              },
            },
          },
        })
      end
    end
    ::continue::
  end
  -- Destroy extraneous items
  for j = i + 1, #children do
    children[j].destroy()
  end
end

Changes:
added at loop start
if obj_data_class == nill then
  goto continue
end

added at loop end
::continue::

Thanks for the report. Invalid favorites entries were not being removed as they should have been, because I neglected to update the code that removes them. That has been fixed.


regression tests error  with openj9 java8

On Mac:
Following tests got timeout error with error message " RegisterApplication(), FAILED TO establish the default connection to the WindowServer, _CGSDefaultConnection() is NULL". No JBS reports.
java/io/Serializable/serialver/classpath/run.sh.run
java/io/Serializable/serialver/nested/run.sh.run
java/util/logging/TestLoggingWithMainAppContext.java.TestLoggingWithMainAppContext
java/util/logging/TestMainAppContext.java.TestMainAppContext
Stacktrace

Program `/Users/jenkins/workspace/openjdk8_j9_openjdktest_x86-64_macos/openjdkbinary/j2sdk-image/jre/bin/../../bin/java' timed out (timeout set to 960000ms, elapsed time including timeout handling was 960045ms).

Standard Output

Creating loggers.
bar1.getParent() is the same as foo1
Now running with security manager
Timeout refired 960 times

Standard Error

_RegisterApplication(), FAILED TO establish the default connection to the WindowServer, _CGSDefaultConnection() is NULL.

https://ci.adoptopenjdk.net/view/Test_openjdk/job/openjdk8_j9_openjdktest_x86-64_macos/lastCompletedBuild/testReport/
java/rmi/activation/Activatable/checkAnnotations/CheckAnnotations.java
java/rmi/activation/Activatable/nestedActivate/NestedActivate.java same failure with ' nested exception is: java.lang.NullPointerException', no JBS report
Both triggered by code:
                       ActivationGroupID groupID =                             ActivationGroup.getSystem().                             registerGroup(groupDesc);
Test failed with: null
java.lang.NullPointerException
	at CheckAnnotations.main(CheckAnnotations.java:95)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at com.sun.javatest.regtest.agent.MainWrapper$MainThread.run(MainWrapper.java:127)
	at java.lang.Thread.run(Thread.java:813)
rmid shut down
ACTIVATION_LIBRARY: Activation System available after 0 milliseconds
RMID: getting a reference to the activation system
RMID: obtained a reference to the activation system
RMID: testlibrary finished shutting down rmid
RMID: rmid exited on shutdown request
ACTIVATION_LIBRARY: finished destroying rmid
RMID: removing rmid's old log file...
TestFailedException: TEST FAILED: ; nested exception is:
	java.lang.NullPointerException
java.lang.NullPointerException
	at CheckAnnotations.main(CheckAnnotations.java:95)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at com.sun.javatest.regtest.agent.MainWrapper$MainThread.run(MainWrapper.java:127)
	at java.lang.Thread.run(Thread.java:813)

https://ci.adoptopenjdk.net/view/Test_openjdk/job/openjdk8_j9_openjdktest_x86-64_macos/83/testReport/junit/java_rmi_activation_Activatable_checkAnnotations_CheckAnnotations/java/CheckAnnotations/
https://ci.adoptopenjdk.net/view/Test_openjdk/job/openjdk8_j9_openjdktest_x86-64_macos/86/testReport/junit/java_rmi_activation_Activatable_nestedActivate_NestedActivate/java/NestedActivate/

jdk/test/java/util/Arrays/TimSortStackSize2.java is referenced above as failing on linuxXL and the test is currently excluded for linux.  Test also fails with MacXL openjdk8-openj9 (tests being run for the first time).
15:34:03 ACTION: main -- Failed. Execution failed: `main' threw exception: java.lang.OutOfMemoryError: Java heap space
15:34:03 REASON: User specified action: run main/othervm -Xms385m TimSortStackSize2 67108864
15:34:03 TIME:   15.218 seconds

15:34:03 java.lang.OutOfMemoryError: Java heap space
15:34:03 	at TimSortStackSize2.createArray(TimSortStackSize2.java:164)
15:34:03 	at TimSortStackSize2.doTest(TimSortStackSize2.java:59)
15:34:03 	at TimSortStackSize2.main(TimSortStackSize2.java:43)
15:34:03 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
15:34:03 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
15:34:03 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
15:34:03 	at java.lang.reflect.Method.invoke(Method.java:498)
15:34:03 	at com.sun.javatest.regtest.agent.MainWrapper$MainThread.run(MainWrapper.java:127)
15:34:03 	at java.lang.Thread.run(Thread.java:813)

Also on MacXL, PlatformLoggerTest.java is failing as described avoce for Windows and linuxXL.  Test is currently excluded for Windows and Linux, but not Mac.
15:57:50 java.lang.RuntimeException: Logger test.logger.bar does not exist
15:57:50 	at PlatformLoggerTest.checkLogger(PlatformLoggerTest.java:121)
15:57:50 	at PlatformLoggerTest.main(PlatformLoggerTest.java:73)
15:57:50 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
15:57:50 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
15:57:50 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
15:57:50 	at java.lang.reflect.Method.invoke(Method.java:498)
15:57:50 	at com.sun.javatest.regtest.agent.MainWrapper$MainThread.run(MainWrapper.java:127)
15:57:50 	at java.lang.Thread.run(Thread.java:813)
15:57:50
15:57:50 JavaTest Message: Test threw exception: java.lang.RuntimeException: Logger test.logger.bar does not exist

Thanks @lumpfish will exclude those tests on Mac XL.
Unfortunately currently there is no way to exclude the LargeHeap specifically as openjdk use uname to get out machine or OS information.

sun/net/www/http/ChunkedOutputStream/checkError.java.checkError Issue opened in JBS as resolved: https://bugs.openjdk.java.net/browse/JDK-8041924
https://ci.adoptopenjdk.net/view/Test_openjdk/job/openjdk8_j9_openjdktest_x86-64_windows/199/testReport/junit/sun_net_www_http_ChunkedOutputStream_checkError/java/checkError/
Standard Error

java.lang.RuntimeException: Test Failed: haven't received the expected IOException
	at checkError.testExit(checkError.java:121)
	at checkError.main(checkError.java:115)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at com.sun.javatest.regtest.agent.MainWrapper$MainThread.run(MainWrapper.java:127)
	at java.lang.Thread.run(Thread.java:813)

JavaTest Message: Test threw exception: java.lang.RuntimeException: Test Failed: haven't received the expected IOException
JavaTest Message: shutting down test

STATUS:Failed.`main' threw exception: java.lang.RuntimeException: Test Failed: haven't received the expected IOException

com/sun/net/httpserver/Test1.java get timeout error Program /home/jenkins/workspace/openjdk8_hs_openjdktest_ppc64le_linux/openjdkbinary/j2sdk-image/jre/bin/../../bin/java' timed out (timeout set to 960000ms, elapsed time including timeout handling was 960563ms)' could be a net work issue?
https://ci.adoptopenjdk.net/view/Test_openjdk/job/openjdk8_hs_openjdktest_ppc64le_linux/265/console

Remove sun/rmi/runtime/Log/6409194/NoConsoleOutput.java as same issue happened to HS and reported to JBS as closed https://bugs.openjdk.java.net/browse/JDK-8156798. Need to reopen it.
https://github.com/AdoptOpenJDK/openjdk-tests/issues/913

This issue is pretty stale. Are there more current or specific issues that cover the failures? What actions need to be taken to address and close this one?

This is openj9 specific. Tests are either excluded by openj9 problemlist or no longer failed. Close here.


fix: remove deprecated no_type_check_decorator

typing.no_type_check_decorator was never implemented in any major type checker and as such will be deprecated in Python 3.13. It's recommended to decorate functions with typing.no_type_check instead.
https://docs.python.org/3.13/library/typing.html#typing.no_type_check_decorator
This will fix a few DeprecationWarnings for bleak:
  /.../bleak/backends/bluezdbus/advertisement_monitor.py:63:
      DeprecationWarning: 'typing.no_type_check_decorator' is deprecated and slated for removal in Python 3.15
    @method()

  /.../bleak/backends/bluezdbus/advertisement_monitor.py:67:
      DeprecationWarning: 'typing.no_type_check_decorator' is deprecated and slated for removal in Python 3.15
    @method()

  /.../bleak/backends/bluezdbus/advertisement_monitor.py:74:
      DeprecationWarning: 'typing.no_type_check_decorator' is deprecated and slated for removal in Python 3.15
    @method()

  /.../bleak/backends/bluezdbus/advertisement_monitor.py:80:
      DeprecationWarning: 'typing.no_type_check_decorator' is deprecated and slated for removal in Python 3.15
    @method()

  /.../bleak/backends/bluezdbus/advertisement_monitor.py:86:
      DeprecationWarning: 'typing.no_type_check_decorator' is deprecated and slated for removal in Python 3.15
    @dbus_property(PropertyAccess.READ)

  /.../bleak/backends/bluezdbus/advertisement_monitor.py:92:
      DeprecationWarning: 'typing.no_type_check_decorator' is deprecated and slated for removal in Python 3.15
    @dbus_property(PropertyAccess.READ, disabled=True)

  /.../bleak/backends/bluezdbus/advertisement_monitor.py:97:
      DeprecationWarning: 'typing.no_type_check_decorator' is deprecated and slated for removal in Python 3.15
    @dbus_property(PropertyAccess.READ, disabled=True)

  /.../bleak/backends/bluezdbus/advertisement_monitor.py:102:
      DeprecationWarning: 'typing.no_type_check_decorator' is deprecated and slated for removal in Python 3.15
    @dbus_property(PropertyAccess.READ, disabled=True)

  /.../bleak/backends/bluezdbus/advertisement_monitor.py:107:
      DeprecationWarning: 'typing.no_type_check_decorator' is deprecated and slated for removal in Python 3.15
    @dbus_property(PropertyAccess.READ, disabled=True)

  /.../bleak/backends/bluezdbus/advertisement_monitor.py:112:
      DeprecationWarning: 'typing.no_type_check_decorator' is deprecated and slated for removal in Python 3.15
    @dbus_property(PropertyAccess.READ, disabled=True)

  /.../bleak/backends/bluezdbus/advertisement_monitor.py:117:
      DeprecationWarning: 'typing.no_type_check_decorator' is deprecated and slated for removal in Python 3.15
    @dbus_property(PropertyAccess.READ)

Thanks @cdce8p


Review Market Card Design Variations and Create Plan for Unifying Market Card Codebase

@bthaile went through these designs with @matt-bullock and created an impl plan


Add CodeCov to CI workflow

Adds CodeCov

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@d772704). Click here to learn what that means.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master      #14   +/-   ##
=========================================
  Coverage          ?   55.11%
=========================================
  Files             ?       18
  Lines             ?      352
  Branches          ?      137
=========================================
  Hits              ?      194
  Misses            ?      149
  Partials          ?        9


[stable/sentry] Support loadBalancerSourceRanges on Service template

What this PR does / why we need it:
Support loadBalancerSourceRanges on Service template.
Needed for people that want to restrict network access to their on-prem Sentry.
Checklist
[Place an '[x]' (no spaces) in all applicable fields. Please remove unrelated fields.]

[x] DCO signed
[x] Chart Version bumped
[x] Variables are documented in the README.md
[x] title of the PR contains starts with chart name e.g. [stable/chart]

On a second thought maybe we don't want the variable default in here https://github.com/helm/charts/pull/13665/files#diff-14be7de4a18363a90b2ca1ecb9dfe3f4R108
That way we can avoid the whole block if not provided (backwards compatible)

/assign @sameersbn

/assign @davidkarlsen

@sameersbn can you please review?

/ok-to-test

/retest

/test pull-charts-e2e

/lgtm

@davidkarlsen Looks like I need approval again. Seems that 2 other sentry PRs where merged today and I had to bump the chart version twice

ping @davidkarlsen

/assign @okgolove

@wvidana hello! Thank you for the PR.
First of all, I don't see a modified documentation (as and default values for loadBalancerSourceRanges).
Could you fix it?

sorry about that @okgolove , completely forgot about it, good catch!

/retest

/lgtm

/retest

/retest

/retest


What about e to edit or o to open

What about e to edit or o to open .
In case I manually want to merge the conflict

@stoivo Great idea!

This has been implemented with https://github.com/mkchoi212/fac/commit/08632d64c9ae7b27e20bc68ddd933541edee9050!
It hasn't been released yet but I would love to get your feedback on the current implementation!
To get the latest version of fac, please run go get github.com/mkchoi212/fac

It works when I have editor set to vim,  also it works with subl but when I set it to subl -w it doesn't open. And when I click e 3 more times. It blows up
 [w,a,s,d,e,?] >> epanic: runtime error: slice bounds out of range

goroutine 75 [running]:
github.com/nsf/termbox-go.PollEvent(0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
	/Users/simon/go/src/github.com/nsf/termbox-go/api.go:348 +0x8bb
github.com/jroimartin/gocui.(*Gui).MainLoop.func1(0xc4201fe090)
	/Users/simon/go/src/github.com/jroimartin/gocui/gui.go:354 +0x30
created by github.com/jroimartin/gocui.(*Gui).MainLoop
	/Users/simon/go/src/github.com/jroimartin/gocui/gui.go:352 +0x6e

@stoivo  Hmmm I will look in to it. Thanks for the feedback though 👍

@stoivo The bug has been fixed with https://github.com/mkchoi212/fac/commit/d93d37e9ccac9ce551e3fd9452bb414d6ffe4e3c, I think 🤔 Could you give it a swirl?

Still did work when set to subl -w
$ EDITOR='subl -w' ~/go/bin/fac
fac: exec: "subl -w": executable file not found in $PATH
simon at simon in ~/dev/work/name/repo on master_with_conflict*
$ echo $PATH
/usr/local/opt/imagemagick@6/bin:/Users/name/.rbenv/shims:/usr/local/git/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:Users/simon/.rbenv/shims:/usr/local/bin:/usr/bin
simon at simon in ~/dev/work/fakturabank/repo on master_with_conflict*
$ which subl
/usr/local/bin/subl

Oh I didn't realize the code breaks when you have a flag in the EDITOR environment variable. I will fix that real quick 👍

Great! Comment here when thats done and I will test it :D

Not sure if this is the most elegant solution but https://github.com/mkchoi212/fac/commit/9c16b8a82794095c288c0f2c85b8d741facf2f34 fixes the issue! Let me know if it works for ya :D

Awesome, not it doesn't crash 💥
Two comments

But nothing happens when you solve the conflict. I tested with sublime and vim. It is still unresolved when I get back to fac.
It would be great if you created a FAC_EDITOR environment variable it would try and fallback to EDITOR if it's not set. its a best practice

And thank you for doing all this for everyone!

It would be great if you created a FAC_EDITOR environment variable...

I will definitely look into that 👍

But nothing happens when you solve the conflict...

Hmm I can't re-create this on my side. Can I see your git status?

Check out this demo.
http://recordit.co/7BfEDqrNcz
Maybe I did't explain myself good

Ah I see what you did. If you look at https://camo.githubusercontent.com/0178c2f554229485cbfd94e3439b4f27d093d2fe/68747470733a2f2f692e696d6775722e636f6d2f47734a4d5249702e676966, I made it so that the conflict markers must stay intact. If not, the prompt turns red, signing an error.
This was because it would be less work by the user and also help them fix their mistakes by not making their action conclusive.

Good point. I'm thinking about putting comments like how git add -p does it when you press e to manually edit code chunk. The only trouble is with Go's ioutil.Tempfile, you can't specify the file name's suffix yet; so no syntax highlighting :p
It loooks like it will be implemented around next month https://github.com/golang/go/issues/4896


Update aidg-Newsletter.md

world creation is worth the newsletter update, no?

It absolutely does, but the bakers are lazy crooks who never update the OP without 5 (You)s complaining about it. Be ready for them to ignore it unless you whine how they aren't reading anything.


Make the developing docs more visible

At the moment it's not entirely obvious where to find the relevant info on how to contribute, especially with how this site seems to use a lot of custom tech. Ideally it'd be in a CONTRIBUTING.md imo, but for now just linking to the current document in the README.md should help.

Like everything seems unfamiliar. One of the first things I looked for is some sort of place where the content of pages would be by themselves, like with zola and other static site generators (then again i guess this isnt a static site generator aince i did see mentions of netlify?). Instead, it took looking thru the commit history to find some of it in the rust app, but not everything. Same for the css since I noticed some color contrast issues. I still don't know where or how to modify the css, doubly with the very... technical and not too readable for humans class definitions on the html.

@TrialDragon I totally understand being unfamiliar, I don't expect everyone to be familiar with all of the technology needed to operate a site like this. Rust and CSS are often at opposite ends in terms of people's skillsets, for example. I've opened #10 to address this.


Merge to publish

Docs Build status updates of commit 413b4c6:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

.openpublishing.publish.config.json
:white_check_mark:Succeeded

breadcrumb/toc.yml
:white_check_mark:Succeeded

docfx.json
:white_check_mark:Succeeded

tutorials/change-notifications.yml
:white_check_mark:Succeeded

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.


Small English grammar issue "in the desktop" -> "on the desktop"

Small English grammar issue "in the desktop" -> "on the desktop"

We can check it in but this is for the MSI


Dataclass extra

Change Summary
forked from @PrettyWood's change which allows using the extra config option for dataclasses.
see https://github.com/samuelcolvin/pydantic/issues/986#issuecomment-744093319

Related issue number
fix #986

Checklist

[X] Unit tests for the changes exist
[ ] Tests pass on CI and coverage remains at 100%
[x] Documentation reflects the changes where applicable
[x] changes/<pull request or issue id>-<github username>.md file added describing change
(see changes/README.md for details)
[x] My PR is ready to review, please add a comment including the phrase "please review" to assign reviewers

please review

please update.

closing since #2557 was merged


Test Only: QA Checks - For Duplicate Records

The scope of this ticket is to address the following Checks to verify any duplicate records being input:
QA and Certification Data Checks

[ ] APPE-48 - Duplicate Appendix E Summary
[ ] APPE-49 - Duplicate Appendix E Run
[ ] APPE-50 - Duplicate Appendix E Oil Record
[ ] APPE-51 - Duplicate Appendix E Gas Record
[ ] CYCLE-19 - Duplicate Cycle Time Test
[ ] CYCLE-20 - Duplicate Cycle Time Injection

Test Case: TC1219

APPE-48-A POST

APPE-49-A POST

APPE-50-A POST

APPE-51-A POST

CYCLE-19-A IMPORT

CYCLE-19-A POST

CYCLE-20-A POST

Rest of bugs fixed via:
Bug: QA Checks - For Duplicate Records #4710


Disable editor preview

- Summary
Fixes #113. Adds ability to disable the editor preview for a collection.
- Test plan
Added setting to example config.yml for settings collection. Tested with npm start.
- Description for the changelog
Adds editor.disable_preview option to collection. If set to true, the editor preview will not be displayed and the button to show the preview will not be displayed.
Not sure it was the best option name so let me know if there's a better one.

@Benaiah updated -- I used editor.preview in the config with a default of true as suggested. In the component I went with collectionPreviewEnabled as the variable name.

@erquhart @Benaiah how do you prefer to merge PRs? 'Create a merge commit' or 'Rebase and merge'?

Create a merge commit.

@josephearl LGTM, thanks for getting that fixed.

Great, thanks guys 👍

@josephearl thank you so much! I really needed this.


bug in run_simulation.sh

In this file /FABulous/fabric_files/FABulous_project_template_verilog/Test/run_simulation.sh
Line 3,4 are
DESIGN=counter
BITSTREAM=test_design/${DESIGN}.bin
It should be
BITSTREAM_DESIGN=sequential_16bit_en
BITSTREAM=../user_design/${BITSTREAM_DESIGN}.bin because bitstream need to be generated for sequential_16bit_en.v not counter.v

The sequential_16bit_en.v is for user examples, while the counter is for testing. If you look into /fabric_files/FABulous_project_template_verilog/Test/test_design you should see two test cases created.


Multiple vertical masters

Description
When we use add_master dispatcher, it adds new master below existing masters. Can we make this behaviour configurable such that new master can be added in a vertical split. I have an ultrawide monitor and want 2 masters vertically split and third slave stack.
Current Behavior (with horizontal split)
|       | s |          |   M   | s |
|   M   | s |     ->   |-------| s |
|       | s |          |   M   |   |

New Behavior (with vertical split)
|       | s |          |   |   | s |
|   M   | s |     ->   |   |   | s |
|       | s |          | M | M |   |

As another ultrawide monitor user, I think this would be a really nice configuration to have!

i also second this. But not just for the master, slaves as well. As there is a lot more horizontal screen space available. I would like to arrange the slave windows in a grid layout. so having the ability to split master horizontally or vertically, as well as the slave window stack.


Add telegram import option

Please add one more option of telegram. As obsidian takes so much time to capture note so I use telegram to capture it by creating private groups and that's why in my telegram lot of notes are collected in the form messages. So is there a way to import those msg as markdown file.
For info, telegram also has export message option.

I was looking into building this feature but it looks like all of the clients of Telegram is actively maintaining right now do not have an option to export your chat history.
Do you know which client I can use to get an export of my Telegram chat history?

Telegram Desktop (for Windows) contains a chat export feature into HTML. Not sure about Web, Mac or Linux


No CLI?

Hi,
I'm Mr. Gradient, a very friendly guy.
Isn't there a CLI for this tool? I won't use it if I can't use it in Terminal. OS: Linux.

Hi we've introduced GUI, so maybe you can try that out.

Closing this issue due to inactivity.


Cat facts API no longer available

@thinkverse mentioned in the community forum the cat facts API is no longer available. If that's the case, we should change the course to use a working API.

If anyone would like to contribute, our first step is duplicating this issue.

Would trying to enter the URL from the response file itself be a satisfactory replication? Or does the whole course need to be replicated to the point that it fails? 🤔
Screenshot of application error on Cat API

@thinkverse Good point - I think this can be considered duplicated, and now is a bug that is a breaking bug. I will move accordingly on the project board.
To fix this, I think we would want to find an alternative API, and update the course instructions accordingly.


The search bar breaks in two lines when in a repository

Since today the GitHub search bar is breaking down in two lines when inside of a repository. Disabling this extension removes the problem. I guess GitHub changed something.

Thanks, a fix is on it's way.


hosts would be remove when cluster update

when update cluster which type is Cluster_EDS,  the hosts would be remove.
function call clusterAdapter.ClusterAdap.TriggerClusterUpdate(cluster.Name, cluster.Hosts) in callback
cluster.Hosts have 0 element when cluster type is Cluster_EDS

fix:
when cluster type is xdsapi.Cluster_EDS, only added/update cluster but not hosts


UI VBM Pre Integration

Sorting out state issues in mapping and fixing state issues present in #632
Delicately Merged maps/ with Material UI refactor
Adding string type to accommodate "sex" covariate parameter for DRNE computation
Cleaned up other weird inputSpec issues present in coinstac-api-server
Added Mapping with VBM Pre
Checked mapping with available computations and normalized b/w VBM Pre and standard format
Merging with latest Master

Three things I've noticed:

if you try to navigate back to maps tab from a currrently ongoing map, it doesn't work
if you map and save, and then click on a tab (rather than the back to btn) the map doesn't show as mapped in the maps homepage ( but might be mapped still)
When you map successfully, the view details btn just brings you to an empty map?

Looks good! I still can't get this to work
* if you try to navigate back to maps tab from a currrently ongoing map, it doesn't work
LMK if there are issues there

Just found another issue, when changing the active pipeline the current maps isn't reset. I'd say this is higher priority that the above


Feature docs

Features

write docstring by LLM
move information, such as 'Author', from the docstring to module-level comments in the file using the # symbol.

Codecov Report
Attention: 522 lines in your changes are missing coverage. Please review.

Comparison is base (16f54ab) 86.08% compared to head (68d21f2) 81.04%.
Report is 586 commits behind head on dev.

Files
Patch %
Lines

metagpt/environment/mincraft_env/mincraft_env.py
27.72%
159 Missing :warning:

...tagpt/environment/werewolf_env/werewolf_ext_env.py
60.11%
67 Missing :warning:

...tagpt/environment/mincraft_env/mincraft_ext_env.py
47.50%
63 Missing :warning:

...etagpt/environment/mincraft_env/process_monitor.py
47.16%
28 Missing :warning:

metagpt/tools/libs/feature_engineering.py
87.77%
28 Missing :warning:

metagpt/provider/openai_api.py
67.18%
21 Missing :warning:

metagpt/actions/mi/execute_nb_code.py
89.33%
16 Missing :warning:

metagpt/environment/android_env/android_ext_env.py
89.34%
13 Missing :warning:

metagpt/strategy/planner.py
84.00%
12 Missing :warning:

...ronment/stanford_town_env/stanford_town_ext_env.py
95.30%
10 Missing :warning:

... and 23 more

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff             @@
##              dev     #810      +/-   ##
==========================================
- Coverage   86.08%   81.04%   -5.05%
==========================================
  Files         186      223      +37
  Lines        9860    12333    +2473
==========================================
+ Hits         8488     9995    +1507
- Misses       1372     2338     +966

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Applies to

This Applies top Teams as well

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

ID: cb9af8cd-c307-aff5-db34-b9c3864cc32a
Version Independent ID: ed904d57-f5db-c145-58af-51959bb4c93c
Content: Set-CsOnlineDialInConferencingUserDefaultNumber (skype)
Content Source: skype/skype-ps/skype/Set-CsOnlineDialInConferencingUserDefaultNumber.md
Service: skypeforbusiness-powershell
GitHub Login: @tomkau
Microsoft Alias: tomkau

@officedocsbot assign @yogkumgit

@MIBadran
Please see https://github.com/MicrosoftDocs/office-docs-powershell/issues/5405#issuecomment-624118384

@get-itips  Thank you very much for the contribution and guidance. @MIBadran Hope this comment is helpful for you. If you see a documentation update is required, please feel free to open an issue for the same. We proceed here to close it. Thanks for taking out some time to open the issue. Appreciate and encourage you to do the same in future also.


[1.x] Bump composer dependencies

Description
Acceptance criteria

[x] All dependencies are bumped to their latest version
[ ] The application is still working as expected
[ ] The semantic versions should be in the form ^1.0 not 1.0.* nor ^1.0.0.
[ ] No asterisk should be used nor the patch version.

1- first step mean only running composer dump?

Hello Eng @imdhemy
can you give me any advice about this task?
After running the composer bump
and composer update gets an Error as the image.

@Moemen-Gaballah Please create a draft PR so that I can help you.


Unreal C++ Quickstart example fails to compile.

The example code for the C++ sample fails to compile, because of this line:
clientAPI->SetTitleId(TEXT("144"));
The compiler issues these errors:
Error E0135	class "PlayFab::UPlayFabClientAPI" has no member "SetTitleId"
Error C2039	'SetTitleId': is not a member of 'PlayFab::UPlayFabClientAPI'
I worked around the issue by deleting the offending line and specifying the TitleId, secret key, and URL in the settings dialog for the PlayFab plugin (in the Unreal editor). However, I spent many hours trying to figure out what to do. Please fix this for other people who are evaluating PlayFab. This issue almost made me give up on PlayFab and return to learning GameLift.
Thanks,
Dwight

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

ID: 4e48c4f7-8d53-d285-b1a5-c10dd1df9302
Version Independent ID: 0f5a227b-9492-7691-eaef-831a81fc54e5
Content: Unreal Engine quickstart - PlayFab
Content Source: playfab-docs/sdks/unreal/quickstart.md
Product: playfab
GitHub Login: @DanBehrendt
Microsoft Alias: dabe

Thanks for the feedback and apologies for the lack of response. Closing this out since the feedback no longer applies to the current documentation.


Add implementation of A* algorithm

Add an example implementation of the A* shortest path algorithm in SearchingAlgorithms/GraphSearch/astar.py
Suggested example: shortest path in a 2D world with Manhattan distance as the heuristic.

Can I work on this?

I would like to work on this issue


fix JSON syntax in example resource-based policy

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Thank you for finding the error in the policy example.


No data from OpenWeather

I hae installed the app, created an api key, waited for an number of days but nothing, no data in my app in Homey. When i test the api key it works an the Openweather site, Homey says pending data. Tried new api keys but still nothing. Any suggestions ?

You should immediately get the first data. Are you using Homey's location? What happens if you enter a different location?


Immersive Engineering breaks BWM

With IE installed, Hemp Rope is not craftable. Seems like a recipe conflict.

Seems to be an issue with Proton, rather than BWM/IE.
 I ripped em out, no more issues. Sorry for the false report.


Is it possible to insert other PDFs into the generated one?

jsPDF allows for specifying which content is inside the PDF that is generated. Can this content include other, pre-existing PDFs?
For example, can jsPDF be used as it is right now to bundle/combine PDFs?

No, this is not possible yet and there are no plans to implement this.


Split bill - App crashes when opening bill split preview

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Version Number: 1.3.84-6
Reproducible in staging?: Yes
Reproducible in production?: No
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Expensify/Expensify Issue URL:
Issue reported by: Applause - Internal Team
Slack conversation:
Issue found when executing PR https://github.com/Expensify/App/pull/29263
Action Performed:

Go to staging.new.expensify.com
Go to group chat > + > Split bill
Complete split bill creation
Click on the bill split preview

Expected Result:
App does not crash
Actual Result:
App crashes
Workaround:
Unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

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

Screenshots/Videos

Android: Native

Android: mWeb Chrome

iOS: Native

iOS: mWeb Safari

MacOS: Chrome / Safari

https://github.com/Expensify/App/assets/78819774/289c279a-bf56-4703-ada9-d297044b651d
logs.txt

MacOS: Desktop

View all open jobs on GitHub

:wave: Friendly reminder that deploy blockers are time-sensitive ⏱ issues! Check out the open StagingDeployCash deploy checklist to see the list of PRs included in this release, then work quickly to do one of the following:

Identify the pull request that introduced this issue and revert it.
Find someone who can quickly fix the issue.
Fix the issue yourself.

Its because this is missing in staging but its not clear to me why https://github.com/Expensify/App/blame/44bcf1c09981f4caa8ccd9c56c73b21c1188a002/src/pages/iou/SplitBillDetailsPage.js#L73

Crash fixed


Move Virtual WAN, Azure Firewall and Front Door to Azure Networking resources

It'd make sense to move to Virtual WAN, Azure Firewall and Front Door to Azure Networking resources

Closing due to age, providing feedback to vteam on content refresh. Thanks!


bash: ./UnitTests: cannot execute binary file: Exec format error

we had tried on different ubuntu platforms but we had encountered same error can someone please help me with this

Hi @aravind329
Could you please share the output of the command:
file ./UnitTests

Hi @aravind329
Exec format error probably means that the binary was compiled for an architecture other than the one being run on. Have you compiled for arm64 and try to run on x86, for example?
If you run file ./UnitTests like Pablo suggested it will tell you what the architecture the unit tests were compiled for, for example, if it's compiled for an arm64 machine it will look like this:
./UnitTests: ELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /system/bin/linker64, with debug_info, not stripped
That will not run on an x86 machine.

Hi @aravind329
we have a cross-compilation guide at https://github.com/ARM-software/armnn/blob/branches/armnn_22_02/BuildGuideCrossCompilation.md which explains how to build aarch64 binaries using x86.
In order to run that code you will need a device with an Arm CPU to run that, what kind of hardware do you have with Arm CPUs?

Hi @MikeJKelly
We are using amd64 cpu for this crossbuild and also we followed the document which we found in your repo
and can you please help us where to find an arm cpu we are searching them but we can't able to find them.
it will be very helpful for our research.

Hi @MikeJKelly
Thank You For Your support we had successfully build our arm unittests and we run them on arm6 cpu.
we had added some small operations and can you please help us with squeeze operation we are confused over this operation can you share an support document so which we can go forward in our research
Thank You

Hi @aravind329
Squeeze is a known operation, present in most known frameworks:

https://www.tensorflow.org/api_docs/python/tf/squeeze
https://pytorch.org/docs/stable/generated/torch.squeeze.html

It is a specific case of reshape, so we parse it to the reshape layer in Arm NN.
Regards

Thanks, I'll check it out.
On Mon, Mar 21, 2022, 16:33 TeresaARM @.***> wrote:

Hi @aravind329 https://github.com/aravind329
Squeeze is a known operation, present in most known frameworks:

https://www.tensorflow.org/api_docs/python/tf/squeeze
https://pytorch.org/docs/stable/generated/torch.squeeze.html

It is a specific case of reshape, so we parse it to the reshape layer in
Arm NN.
Regards
—
Reply to this email directly, view it on GitHub
https://github.com/ARM-software/armnn/issues/621#issuecomment-1073760628,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ARSADH3UX64JRHE777NEOUTVBBJQXANCNFSM5QXTSBLA
.
You are receiving this because you were mentioned.Message ID:
@.***>

Thank you for your questions! I will close the ticket as the issue is solved now.
Please do not hesitate to contact us again!
Kindest Regards

Thanks a lot.  For giving so much time and support.
On Mon, Mar 21, 2022, 16:52 TeresaARM @.***> wrote:

Closed #621 https://github.com/ARM-software/armnn/issues/621.
—
Reply to this email directly, view it on GitHub
https://github.com/ARM-software/armnn/issues/621#event-6274668744, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/ARSADHYDK22Z3OTRYWXB5O3VBBLXBANCNFSM5QXTSBLA
.
You are receiving this because you were mentioned.Message ID:
@.***>


WIP: Use .pth file to import distutils from setuptools

Summary of changes
This is a WIP proof of concept for #2259.
It looks to be a bit tricky to pull it off — at the moment, this breaks everything because the circular import can't resolve distutils.core. The two broad-strokes options I see for resolving this:

Move all references to distutils within setuptools to point to ._distutils.
Move setuptools._distutils into _distutils_importer/distutils-shim-package.

There may be other options, though.
Pull Request Checklist

[ ] Changes have tests
[ ] News fragment added in changelog.d. See documentation for details

I've updated this to use the module import-time hook described in this comment.
Theoretically we could replace the setuptools.distutils_patch import entirely and do all the work in the loader, but I think it's best to make it so that import setuptools is guaranteed to do the distutils patch, even in the absence of the .pth file.
I could easily imagine a situation where a redistributor decides to forego the .pth file in favor of another solution like a sitecustomize.py or something.

I've restored the warnings now, since in the new sys.meta_path approach we aren't unconditionally hitting those code paths, but I think they still need to be adjusted — the only way an end user would see those warnings is if our hack has failed in some way.
Also I'm not sure how best to test this stuff. Any ideas @jaraco? Given that you brought up the zipimport case, do you have any examples using zipimport with setuptools? I tried to come up with one and didn't really succeed.

Also I'm not sure how best to test this stuff. Any ideas @jaraco?

I've mainly tested it by ensuring that import distutils imports the local module in various scenarios.

Given that you brought up the zipimport case, do you have any examples using zipimport with setuptools?

I believe you can simply build a wheel and then set PYTHONPATH=setuptools.whl. Unfortunately, that approach doesn't honor the .pth file, even though the .pth file appears at the top of the wheel.
I've also observed that the setup.py develop case doesn't seem to get the .pth file in a site dir, so import distutils gets the stdlib version. This behavior even applies to the setuptools test suite.
I'd forgotten that .pth files only have their effect if they're found in a "site" dir, so that suggestion may have been a bad one.
Hmm. I do notice that easy-install.pth gets installed to site-packages even for an editable install. Perhaps setuptools will need to re-use that technique for installing the distutils_precedence.pth to a site directory.
That still won't address the zipimporter issue, but now that I think about it, it may be users in those environments need to take explicit action to enact startup behavior as future-fstrings advises its users.

In e3714224, I've pushed my suggestions, and I've confirmed the behavior works as intended:
$ tox --notest
# replace editable install with regular install
$ .tox/python/bin/pip install .
$ env SETUPTOOLS_USE_DISTUTILS=local .tox/python/bin/python -c "import distutils; print(distutils.__file__)
/Users/jaraco/code/public/pypa/setuptools/setuptools/_distutils/__init__.py

Interestingly, when using pip-run to test, I encounter an error:
~ $ env SETUPTOOLS_USE_DISTUTILS=local pip-run -q ~/p/pypa/setuptools -- -c "import distutils; print(distutils.__file__)"
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "<frozen importlib._bootstrap>", line 991, in _find_and_load
  File "<frozen importlib._bootstrap>", line 971, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 914, in _find_spec
  File "/var/folders/c6/v7hnmq453xb6p2dbz1gqc6rr0000gn/T/pip-run-8u3pbhxa/_distutils_importer/__init__.py", line 25, in find_spec
    return self.get_distutils_spec()
  File "/var/folders/c6/v7hnmq453xb6p2dbz1gqc6rr0000gn/T/pip-run-8u3pbhxa/_distutils_importer/__init__.py", line 30, in get_distutils_spec
    class DistutilsLoader(importlib.util.abc.Loader):
AttributeError: module 'importlib' has no attribute 'util'

That's fixed in 2986be4.

Ok, I'll take a look in the morning.
I think it's fine to basically fall back to the "you must import setuptools first" behavior if the end user can remedy this themselves by installing setuptools a different way. The main thing I'm concerned about is if there is a reasonable / supported workflow where end users will start seeing breakages due to import order in packages they don't control and can't easily fix.
I think that with PEP 517/518 and the fact that you can always fix this by installing setuotools in a normal way, we're probably fine.
Not sure how well tested any of this is, though...

@jaraco Looks like the changes you made make it so that you either get the distutils patch via the .pth file or you don't get it at all.

@jaraco OK, so I like the idea of moving the distutils_patch module into _distutils_importer, but two things:

Even though it involves duplication of the logic, I think we should leave the feature flag in the .pth file. The logic is simple enough and waiting until after the module is imported will add more overhead to every startup in an environment where setuptools is installed, even if they never use it. Even assuming that's negligible, weird environments abound and this is unconditionally running a bunch of our code on every start-up in a way that can't be turned off. I think it would be prudent to start off slower.
I'm thinking it might be preferable to keep _distutils_importer to a single file rather than a package of 3 files. I don't think we get a lot out of having it in 3 separate files where importing the files themselves has different actions, and I think that it will be easier for people who are going to need to modify this as part of their own environment-specific deployments if it were a single file easy to vendor and patch (or to copy directly into a sitecustomize.py or something, for example).

What do you think?

Looks like the changes you made make it so that you either get the distutils patch via the .pth file or you don't get it at all.

That wasn't my intention. I would have expected this line to cause the hack to be invoked unconditionally. And I confirm it works as intended:
setuptools distutils_import_hack $ git-id
1e53a2c1
setuptools distutils_import_hack $ env SETUPTOOLS_USE_DISTUTILS=local .tox/python/bin/python -c "import distutils; print(distutils.__file__)"
/Users/jaraco/code/public/pypa/setuptools/setuptools/_distutils/__init__.py

Can you share where the behavior misses your expectation?

1. we should leave the feature flag in the `.pth` file.

That's fair. I'll do that.

2. keep `_distutils_importer` to a single file rather than a package of 3 files

My main reason for doing this with _distutils_importer.override is to isolate the behavior-on-import and to minimize the impact on setuptools.__init__. If the behavior isn't implied by the import, then the importer also needs to call some function, and you can't do that in setuptools.__init__ without violating linter rules over many subsequent lines, so you either need to noqa all of those lines or disable that linter for the file. As it is, only one line in setuptools.__init__ is affected to engage the behavior. If there's a way to keep that hook as one-line, I'm open to any organization of the new package.
I don't know any way to do that without also implicitly enacting that behavior when triggered from the .pth file, which is what I was trying to avoid. In other words, these are the requirements:

.pth file only installs the hook.
more aggressive override is only invoked on import setuptools.
impact on setuptools.__init__ is one line of execution.

I do think it makes sense to consolidate all of the behavior into _distutils_importer.__init__ and minimize the behavior in the behavior-on-import modules.
I'll work on another draft, but if you have ideas on how to eliminate .override, please share.

That wasn't my intention. I would have expected this line to cause the hack to be invoked unconditionally. And I confirm it works as intended:
...
Can you share where the behavior misses your expectation?

Sorry, I did figure out that it worked as intended after I left that comment, then I guess I forgot that I had actually hit "send".

If the behavior isn't implied by the import, then the importer also needs to call some function, and you can't do that in setuptools.__init__ without violating linter rules over many subsequent lines, so you either need to noqa all of those lines or disable that linter for the file. As it is, only one line in setuptools.__init__ is affected to engage the behavior. If there's a way to keep that hook as one-line, I'm open to any organization of the new package.

Can we do a multiline disable? With pylint you can do # pylint: disable=rule and # pylint: enable=rule on another line. I don't remember us having a linter, but it seems like someone set up flake8 at some point? Disabling the "import not at top" error on the whole file also doesn't bother me too much: I'm not too worried about "import not at top" sneaking into setuptools.__init__, and I feel like having stuff happen implicitly as part of an import is worse than explicitly calling the function (putting aside the fact that the thing we're doing is making import setuptools implicitly do this thing :stuck_out_tongue:).
We could also presumably switch to pylint or something that does allow block-disabling of rules.
At the end of the day, I don't like the idea of contorting our code just to satisfy linters, I find linters useful until they get in my way, at which point I ruthlessly disable them. I think there are probably real benefits to keeping this hack in a single file, and only minor benefits to keeping the linter rule in place on that file.

Can we do a multiline disable?

Yes. I'm not opposed to any number of lines that appear in one contiguous block, so a block-based enable/disable would be fine. What I really want to avoid is more touch points at different points in the code.

it seems like someone set up flake8 at some point?

It may have been me. I use pytest-flake8 across a lot of my projects and consider it a best practice.

Disabling the "import not at top" error on the whole file also doesn't bother me too much: I'm not too worried about "import not at top" sneaking into setuptools.__init__,

I'd be okay with disabling it for the file, but I'm pretty sure that can't happen without a discontinuous line or a line in another file, adding another touch point (and cross-file dependency). I does not appear as if flake8 has per-file ignores that can be declared inline.

We could also presumably switch to pylint or something that does allow block-disabling of rules.

Switching to pylint would require a divergence from the practices I follow in other projects or would require transitioning those projects to pylint. Either of those approaches greatly expands the scope of this effort and creates a dependency I'd like  to avoid. I'd be willing to consider such a transition separately, and if it can be accepted, utilize it to remove the extraneous import.
In df0adbd, I've reduced the override to just its bare minimum. Hopefully that minimizes the issue and makes a future transition straightforward.

At the end of the day, I don't like the idea of contorting our code just to satisfy linters, I find linters useful until they get in my way, at which point I ruthlessly disable them. I think there are probably real benefits to keeping this hack in a single file, and only minor benefits to keeping the linter rule in place on that file.

In my experience, having linters is of minimal value for individual projects, but serves its main value in settling what would otherwise be bikeshedding over subjective preferences. Linters have cost me much more time than they've ever saved, but at least they allow me to offload those decisions. I do my best to honor the preferences of the linters, even when they violate my sensibilities.
At this point, the hack 99% in a single file with only one small shim for override. I think that's good enough to proceed and we can iterate more if appropriate.

At this point, the hack 99% in a single file with only one small shim for override. I think that's good enough to proceed and we can iterate more if appropriate.

Yeah, that's a fair compromise. I'll start another issue for the pytest-flake8 thing, because when working on this (or something else recently) it did cause me some troubles.
One last thing, possibly bikeshedding, but should we rename this from _distutils_hack to _setuptools_distutils_hack or something like that? I don't think too many people will see this, but it occurs to me that people are generally not used to PyPA packages installing multiple packages, and they may not realize where _distutils_hack is coming from. We should also (either in addition or instead) give more context about why this module exists in the docstring.
Happy to do those changes myself if you want.

Also this seems like a lot of commits, we should probably rewrite the history a bit. If you don't want to, I'm happy to merge all the related changes into 2-3 commits.

Hm, I found a major problem here. Apparently we've been testing setuptools against the version in the local directory using an editable install.
Since editable installs don't install the .pth file, that makes it impossible for us to actually test this behavior. During my rebase I accidentally made a change that should have broken the tests, but didn't, which means this behavior is untested, something I'm very uncomfortable with.
I think before we merge this we should refactor the tests to make it possible to test when not using an editable installation, and ensuring that we test as installed.

To clarify, I think we should probably do that in a separate PR, since this one is already a bit complicated and I've got a half-refactored history sitting around semi-blocked on this.

I did one-off test the behavior using pip-run in https://github.com/pypa/setuptools/pull/2260#issuecomment-660755061 and repeated that test with the latest code. In my opinion, that's sufficient, though I wouldn't object to there being a test for the installed package.

I did one-off test the behavior using pip-run in #2260 (comment) and repeated that test with the latest code. In my opinion, that's sufficient, though I wouldn't object to there being a test for the installed package.

I don't think that is sufficient. Redistributors also need to be able to run the tests, and we need to be confident in our ability to accept PRs from contributors who are going to make changes to this code. We also need confidence that it works on all supported platforms. Relying on one-off testing will dramatically slow our velocity on probably one of the most trickiest features we've released in a long time.
It's unfortunate that our tech debt is coming due when we'd like to get these changes out, but when you're in a hole it's probably best to stop digging.

I don't think that is sufficient. Redistributors also need to be able to run the tests, and we need to be confident in our ability to accept PRs from contributors who are going to make changes to this code. We also need confidence that it works on all supported platforms. Relying on one-off testing will dramatically slow our velocity on probably one of the most trickiest features we've released in a long time.

I started writing tests for this functionality, but when I did, I began running into bugs in pytest-virtualenv and ran out of steam before I found a solution. More importantly, the behavior that's most essential is that setuptools runs as intended in a system site-packages environment, functionality that's never been part of the test suite.
I'm open to more tests, but I'm not excited about the prospect, given that once this functionality is working as intended and the bugs have been worked through, I don't expect this code to change much and expect it to be deprecated as soon as possible. In other words, it's not inherent to the design, but an artifact of a transition effort. That's why I'm okay with releasing it as best-effort and incidentally tested.
That said, I'd welcome tests for it - I'm just not sure it's worth the investment or the delay in making the functionality available.
By the way, what is the status of the rewrite? It looks like tests are failing everywhere. Do you have plans to investigate the emergent issues?

I started writing tests for this functionality, but when I did, I began running into bugs in pytest-virtualenv and ran out of steam before I found a solution. More importantly, the behavior that's most essential is that setuptools runs as intended in a system site-packages environment, functionality that's never been part of the test suite.

Yes, that's the "technical debt" that I was referring to. We should have never been testing it in any other way, and now we have a major, high-importance and high-profile feature that was rolled out without tests which breaks many things and where it's very difficult to iterate on solutions because we can't even run the test suite in a way where the change takes effect.
The problem here is not that I'm requesting an unreasonable standard, the problem is that we never had this standard in the first place, and that we rolled out the distutils adoption without it in place. If this is causing major problems, we should roll back the distutils adoption until we can get it tested properly (including actually running the distutils test suite!).

I'm open to more tests, but I'm not excited about the prospect, given that once this functionality is working as intended and the bugs have been worked through, I don't expect this code to change much and expect it to be deprecated as soon as possible. In other words, it's not inherent to the design, but an artifact of a transition effort. That's why I'm okay with releasing it as best-effort and incidentally tested.

The biggest issues here are that we need tests to be able to make changes with confidence. The issue with sys.meta_path was an artifact of the history rewriting that got completely overlooked because we cant use the test suite to test this! When inevitably there are a half dozen bug reports for the next release of this, we'll need to be able to make changes in such a way that none of the existing functionality breaks on any of our supported platforms. It's true that almost all of our tests (and indeed almost all the tests in all projects) tend to stop breaking once the changes stabilize, but we keep them around anyway to prevent regressions and to give ourselves confidence that nothing fundamental about the way the program works is changing without our knowing about it.

That said, I'd welcome tests for it - I'm just not sure it's worth the investment or the delay in making the functionality available.

Again, I strongly disagree. To be honest, I think almost all consumers of this project don't care whether or not they use the distutils from the standard library or from setuptools. From a user-centered point of view, this is the kind of change that we should be most cautious about, because any breakage we introduce is a cost that we're asking our users to bear in exchange for making it easier to maintain distutils and setuptools and to give users a more consistent experience. Acting quickly without testing just to get it done is the opposite of what we should be doing because it simultaneously makes it harder for us to maintain the project and makes it more fragile for end users. No one wins.

By the way, what is the status of the rewrite? It looks like tests are failing everywhere. Do you have plans to investigate the emergent issues?

I think this is blocked on us getting the test suite working, which I don't have much time for right now. If the current situation is untenable my opinion is that we should roll back the distutils adoption and try to fix it when we have our ducks in a row.

I can't help but feel that if we back out the distutils patch, we're allowing perfect to be the enemy of good.
There are these mitigating factors I see:

The bulk of the behavior has tests (distutils has working tests in CPython and pypa/distutils) and setuptools has its own tests.
Although Setuptools previously integrated (heavily) with distutils, it has not had integration tests.
Integration of distutils reduces the complexity by reducing the number of distutils versions that each Setuptools release must maintain compatibility with.
This change is ~120 lines of code that's incidental, transient, and not part of the essential design or user experience.
The risk from this change is minimized through manual tests and through rapid releases whereby unexpected degradation can be readily reverted or repaired.

I agree this decision isn't easy, but I just can't see backing out the change or leaving it degraded. We've already backed out the change to be opt-in and validated that the opt-in behavior is working as intended. If we don't have the resources to produce the desired outcome, we should eek by with what we can achieve. I'm all for rigor, and we can ratchet up the rigor in subsequent changes (presumably before attempting major refactoring). There are lots of steps ahead of us, including at least  reconciling the monkey patches, identifying and presenting a minimal distutils interface, supplanting and removing the stdlib implementation, and eventually deprecating the distutils interface altogether.
To that end and with some regret, I'll proceed with the draft where the tests were passing (plus the meta_path patch cherry-picked). I've pushed that to the distutils-import-hack branch and will submit that as a different PR. I realize it doesn't represent a clean history of how we wish we'd approached it, but it does appear to achieve the goal and address the issue.

I strongly disagree with this decision. Until this project is actually well-tested I don't think we can consider rolling out a change of this magnitude. I appreciate the desire to make forward progress but moving distutils from a project with excellent testing infrastructure (CPython) to a completely untested project is a major regression. Particularly when we are already getting a reputation for churn.
Switching to the old pre-rebase version is even worse, because the history isn't even clean. Very unfortunate. I will probably personally recommend to everyone that they pin setuptools to a pre-distutuls-adoption version indefinitely at this point.


Move HTTP/2 illegal message header check from message converters to protocol interceptors

Presently HTTP/2 specific header field validation logic is backed into message converters. It makes it impossible to customize or disable. Moreover, when a HTTP/2 promise requests when get rejected as invalid due to presence of illegal headers, it cannot be correctly mapped to a handler because there is request object to start with, and as a result the error does not get correctly propagated to the caller.
This change-set corrects the problem by moving header field validation logic from message converters to the protocol processing chain, where it belongs.
This also enables us to to allow the host header in H2 promise requests when connecting to Apache HTTPD.

@arturobernalg Please review

Cherry-picked to 5.3.x


docker engine fails to recognize managed plugin driver after uninstalling DEB package

Description
I was having docker-volume-vshere plugin, called as vDVS, using package based installation so far. Now the plugin is having support of Docker Managed plugin system, so uninstalled vDVS plugin (dpkg -P docker-volume-vsphere) and  installed managed plugin by pulling from docker store (using docker plugin install --grant-all-permissions --alias vsphere vmware/docker-volume-vsphere:latest).
Following issues I have observed:

docker volume ls takes more time to complete/respond
volume creation request fails
docker volume ls shows volume multiple entries for the same volume name

docker volume ls pause for ~30 seconds and shows the output (shows volumes created previously).

Further volume creation fails with following error.

root@sc-rdops-vm18-dhcp-57-89:~# docker volume create -d vsphere vol5
Error response from daemon: create vol5: Post http://%2Frun%2Fdocker%2Fplugins%2Fvsphere.sock/VolumeDriver.Create: dial unix /run/docker/plugins/vsphere.sock: connect: no such file or directory

Sometimes, docker volume ls shows volume entries twice one for package based installation driver and another for managed plugin based installation driver ( see received result area for more detail)

Steps to reproduce the issue:
Pre-reqs: VMWare ESX with a Docker host VM inside. (Ubuntu 16.04 Mini) and docker-volume-vsphere VIB installed.
See https://github.com/vmware/docker-volume-vsphere/ for more info
Downloads: https://github.com/vmware/docker-volume-vsphere/releases/tag/0.13

Install vDVS using package installation DEB on ubuntu vm

1. wget https://bintray.com/vmware/vDVS/download_file?file_path=docker-volume-vsphere_0.13.15d313a_amd64.deb
2. dpkg -i download_file\?file_path\=docker-volume-vsphere_0.13.15d313a_amd64.deb

Create volume using driver called vsphere and make sure volume is created successfully

docker volume create -d vsphere vol4
root@sc-rdops-vm18-dhcp-57-89:~# docker volume ls
DRIVER              VOLUME NAME
vsphere             vol4@TestDatastore

Uninstall vDVS deb package

dpkg -r docker-volume-vsphere

Install vDVS managed plugin

docker plugin install --grant-all-permissions --alias vsphere vmware/docker-volume-vsphere:latest

Invoke docker plugin ls to validate managed plugin installation
Invoke volume creation as shown below and observed an error

root@sc-rdops-vm18-dhcp-57-89:~# docker volume create -d vsphere vol5
Error response from daemon: create vol5: Post http://%2Frun%2Fdocker%2Fplugins%2Fvsphere.sock/VolumeDriver.Create: dial unix /run/docker/plugins/vsphere.sock: connect: no such file or directory

Describe the results you received:
root@sc-rdops-vm18-dhcp-57-89:~# docker plugin ls
ID                  NAME                DESCRIPTION                           ENABLED
3e1fbe5c9aa3        vsphere:latest      VMWare vSphere Docker Volume plugin   true
root@sc-rdops-vm18-dhcp-57-89:~# docker volume create -d vsphere vol5
Error response from daemon: create vol5: Post http://%2Frun%2Fdocker%2Fplugins%2Fvsphere.sock/VolumeDriver.Create: dial unix /run/docker/plugins/vsphere.sock: connect: no such file or directory
root@sc-rdops-vm18-dhcp-57-89:~# docker volume create -d vsphere:latest vol5
vol5
root@sc-rdops-vm18-dhcp-57-89:~# docker volume ls
DRIVER              VOLUME NAME
vsphere             vol4   <<<<<<<<<<<<<<<<<<< notice two entries
vsphere:latest      vol4@TestDatastore
vsphere:latest      vol5@TestDatastore

docker.service log
Apr 14 21:46:33 sc-rdops-vm18-dhcp-57-89 dockerd[6922]: time="2017-04-14T21:46:33.327462375Z" level=warning msg="Unable to connect to plugin: /run/docker/plugins/vsphere.sock/VolumeDriver.Get: Post http://%2Frun%2Fdocker%2Fplugins%2Fvsphere.sock/VolumeDriver.Get: dial unix /run/docker/plugins/vsphere.sock: connect: no such file or directory, retrying in 1s"
Apr 14 21:46:34 sc-rdops-vm18-dhcp-57-89 dockerd[6922]: time="2017-04-14T21:46:34.329087624Z" level=warning msg="Unable to connect to plugin: /run/docker/plugins/vsphere.sock/VolumeDriver.Get: Post http://%2Frun%2Fdocker%2Fplugins%2Fvsphere.sock/VolumeDriver.Get: dial unix /run/docker/plugins/vsphere.sock: connect: no such file or directory, retrying in 2s"
Apr 14 21:46:36 sc-rdops-vm18-dhcp-57-89 dockerd[6922]: time="2017-04-14T21:46:36.329938956Z" level=warning msg="Unable to connect to plugin: /run/docker/plugins/vsphere.sock/VolumeDriver.Get: Post http://%2Frun%2Fdocker%2Fplugins%2Fvsphere.sock/VolumeDriver.Get: dial unix /run/docker/plugins/vsphere.sock: connect: no such file or directory, retrying in 4s"
Apr 14 21:46:40 sc-rdops-vm18-dhcp-57-89 dockerd[6922]: time="2017-04-14T21:46:40.330874529Z" level=warning msg="Unable to connect to plugin: /run/docker/plugins/vsphere.sock/VolumeDriver.Get: Post http://%2Frun%2Fdocker%2Fplugins%2Fvsphere.sock/VolumeDriver.Get: dial unix /run/docker/plugins/vsphere.sock: connect: no such file or directory, retrying in 8s"
Apr 14 21:46:48 sc-rdops-vm18-dhcp-57-89 dockerd[6922]: time="2017-04-14T21:46:48.332211437Z" level=warning msg="Unable to connect to plugin: /run/docker/plugins/vsphere.sock/VolumeDriver.Create: Post http://%2Frun%2Fdocker%2Fplugins%2Fvsphere.sock/VolumeDriver.Create: dial unix /run/docker/plugins/vsphere.sock: connect: no such file or directory, retrying in 1s"
Apr 14 21:46:49 sc-rdops-vm18-dhcp-57-89 dockerd[6922]: time="2017-04-14T21:46:49.333514812Z" level=warning msg="Unable to connect to plugin: /run/docker/plugins/vsphere.sock/VolumeDriver.Create: Post http://%2Frun%2Fdocker%2Fplugins%2Fvsphere.sock/VolumeDriver.Create: dial unix /run/docker/plugins/vsphere.sock: connect: no such file or directory, retrying in 2s"
Apr 14 21:46:51 sc-rdops-vm18-dhcp-57-89 dockerd[6922]: time="2017-04-14T21:46:51.334540395Z" level=warning msg="Unable to connect to plugin: /run/docker/plugins/vsphere.sock/VolumeDriver.Create: Post http://%2Frun%2Fdocker%2Fplugins%2Fvsphere.sock/VolumeDriver.Create: dial unix /run/docker/plugins/vsphere.sock: connect: no such file or directory, retrying in 4s"
Apr 14 21:46:55 sc-rdops-vm18-dhcp-57-89 dockerd[6922]: time="2017-04-14T21:46:55.335566859Z" level=warning msg="Unable to connect to plugin: /run/docker/plugins/vsphere.sock/VolumeDriver.Create: Post http://%2Frun%2Fdocker%2Fplugins%2Fvsphere.sock/VolumeDriver.Create: dial unix /run/docker/plugins/vsphere.sock: connect: no such file or directory, retrying in 8s"
Apr 14 21:47:03 sc-rdops-vm18-dhcp-57-89 dockerd[6922]: time="2017-04-14T21:47:03.336726902Z" level=error msg="Handler for POST /v1.26/volumes/create returned error: create vol5: Post http://%2Frun%2Fdocker%2Fplugins%2Fvsphere.sock/VolumeDriver.Create: dial unix /run/docker/plugins/vsphere.sock: connect: no such file or directory"

Describe the results you expected:
Moving to managed plugin based installation should be transparent; either docker service should be restarted automatically as part of docker plugin install or call out explicitly if any extra steps needs to be done.
As you can see, the plugin is installed using --alias keyword, so further volume creation should not be failed.
Additional information you deem important (e.g. issue happens only occasionally):
Note: After restarting docker service, while invoking above command again works fine and docker volume ls also responds quickly.
Output of docker version:
root@sc-rdops-vm18-dhcp-57-89:~# docker version
Client:
 Version:      17.03.0-ce
 API version:  1.26
 Go version:   go1.7.5
 Git commit:   60ccb22
 Built:        Thu Feb 23 11:02:43 2017
 OS/Arch:      linux/amd64

Server:
 Version:      17.03.0-ce
 API version:  1.26 (minimum version 1.12)
 Go version:   go1.7.5
 Git commit:   60ccb22
 Built:        Thu Feb 23 11:02:43 2017
 OS/Arch:      linux/amd64
 Experimental: false

Output of docker info:
root@sc-rdops-vm18-dhcp-57-89:~# docker info
Containers: 0
 Running: 0
 Paused: 0
 Stopped: 0
Images: 2
Server Version: 17.03.0-ce
Storage Driver: aufs
 Root Dir: /var/lib/docker/aufs
 Backing Filesystem: extfs
 Dirs: 2
 Dirperm1 Supported: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local vsphere
 Network: bridge host macvlan null overlay
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 977c511eda0925a723debdc94d09459af49d082a
runc version: a01dafd48bc1c7cc12bdb01206f9fea7dd6feb70
init version: 949e6fa
Security Options:
 apparmor
 seccomp
  Profile: default
Kernel Version: 4.4.0-66-generic
Operating System: Ubuntu 16.04.2 LTS
OSType: linux
Architecture: x86_64
CPUs: 1
Total Memory: 992.3 MiB
Name: sc-rdops-vm18-dhcp-57-89
ID: QI6A:4FBR:BMQ2:S6T3:QNAL:P7IB:3UBU:5UVR:THMQ:C4T4:XSXL:FELA
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): false
Username: shuklanirdesh
Registry: https://index.docker.io/v1/
WARNING: No swap limit support
Experimental: false
Insecure Registries:
 <IP_ADDRESS>/8
Live Restore Enabled: false

Additional environment details (AWS, VirtualBox, physical, etc.):

Ubuntu 16.04.2 LTS (GNU/Linux 4.4.0-66-generic x86_64)
VMWare ESXi 6.0U2 GA release

/CC @msterin @pdhamdhere

/cc @anusha-ragunathan @cpuguy83

Just because user does a dpkg -r docker-volume-vsphere  doesnt make docker engine remove pluginv1 (in this case "vsphere" plugin) from its inventory. Docker-engine discovery of pluginv1 happens during startup and if the plugin is missing (i.e not responsive to API calls over the socket), then it will indeed result in behavior such as docker plugin ls being slow.
Also, user is creating an pluginv2 alias which conflicts with the pluginv1. This again results in expected pluginv2 discovery issues and get resolved with referencing the plugin with name:tag which is specific to pluginv2.
To transition between pluginv1 and pluginv2, users will need to restart engine.

Thanks @anusha-ragunathan !

Just because user does a dpkg -r docker-volume-vsphere doesnt make docker engine remove pluginv1 (in this case "vsphere" plugin) from its inventory.

While using package installation (using deb/rpm), there is no issue at all.
Volume creation failure or docker volume ls being slowness is only happens while using plugin based installation.

To transition between pluginv1 and pluginv2, users will need to restart engine.

Shouldn't docker plugin install takes care about docker engine restart?

No docker API will have that kind of privilege.

When the v1 (unmanaged)  plugin is removed, the .Sock file (and json if it was around) is  removed. Methinks  it's a good hint to remove the old driver from internal tracking without restart. At any rate, it's a doc update for us so it does not feel like a hi priority issue,


Disable logging for mobile

@bhardwajaditya This is not working for me when I embed the widget into a web page.  It only seems to work from the /livechat url directly.  Maybe this resolves to true in the embedded widget case?  (window.matchMedia('(max-width: 500px)').matches) {

@ear-dev yeah just checked, that seems to be a problem for iframe cases

@ear-dev touch detection fixed the issue


Error observed while testing w/ nock

I'm getting the following error when running a test that uses nock.
TypeError: Cannot read property '_redirectable' of undefined
      at eventHandlers.(anonymous function) (node_modules/follow-redirects/index.js:22:7)
      at OverriddenClientRequest.RequestOverrider.req.once.req.on (node_modules/nock/lib/request_overrider.js:195:7)
      at Writable.RedirectableRequest._performRequest (node_modules/follow-redirects/index.js:69:12)
      at Writable.RedirectableRequest (node_modules/follow-redirects/index.js:46:7)
      at Object.wrappedProtocol.request (node_modules/follow-redirects/index.js:202:10)
      at Object.wrappedProtocol.get (node_modules/follow-redirects/index.js:207:33)
      at getLatestUrl (lib/update.js:21:13)
      ...

The error doesn't happen when I run the program regularly.  See this travis build for more context.

At the moment, this seems like a nock bug to me; it doesn't set the correct this when executing the callback. Could you either file an issue with nock, or write a small reproducible test case here?

See https://github.com/evansiroky/follow-redirects-nock-bug

Perfect, thanks!

It's a nock bug: node-nock/nock#769.

had the same issue, upgrading to latest version fixed it.


Add helper for determining cronjob api version and update charts

This should be a PR to Farley's repo... closing.


How can I change font.

In iOS9, default system font is SF family fonts.
How can I update font?

That's a good point. Maybe I should change that in the default CSS.
If you want to do it manually, you'll have to change the style.css file where it defines the font.
Otherwise, you can load your own custom CSS file to change the styling if you want. I wrote about how to do so in this issue before, so it will probably work for you.


Make Windows installer configurable

WE2-378
Signed-off-by: Raul Metsma<EMAIL_ADDRESS>

Note to self: update libelectronic-id to latest main.


Implement constant operation simplification

There's a small optimization that can be easily implemented, which is to simplify operations that don't contain variables.
For instance: when this expression is parsed 2 + sin(x) + 12 / 4 ^ 2 exp4j generates 2.0 x sin + 12.0 4.0 2.0 ^ / +  when it could generate 2.0 x sin + 0.75 + or even better 2.75 x sin +.
I currently have a small working (it passes all of the tests) implementation that is able do the first simplification assuming that all the functions are deterministic (BTW adding a non-deterministic flag is trivial), the second optimization will be pretty hard without using trees.
I believe that is a good starting point for other types of simplifications like * 1, / 1, f(x) + f(x) -> 2 * f(x), etc.
Is anyone interested?

Im certainly interested in improving exp4j performance. Let me wrap my head around it and take a look at your implementation. It will probably take me some days but I will come back to you.

I've changed a bit PerformanceTest to evaluate a more complex formula, in this case log(x) - y * sqrt(x^cos(y)) + 43/9 * sin(x) - 3^(-3), in this case there are only two small simplifications which result in log(x) - y * sqrt(x^cos(y)) + 4.7778 * sin(x) - 0.037037 but there's a ~5% performance improvement.
+------------------------+---------------------------+--------------------+
| Implementation         | Calculations per Second   | Percentage of Math |
+------------------------+---------------------------+--------------------+
| Java Math              |                2575981.00 |           100.00 % |
| exp4j no opt           |                 605679.70 |            23.51 % |
| exp4j opt              |                 746622.00 |            28.98 % |
| JSR-223 (Java Script)  |                    202.70 |             0.01 % |
+------------------------+---------------------------+--------------------+

I will upload a couple more patches with some extra tests, the modifications to PerformanceTest and the  deterministic flag.

This looks indeed very promising. I wish I had time today, but it will have to wait until the weekend at least. Im very sorry about the delay, please don't be discouraged. I very much like what I see ;)

Hey @dktcoding
looking at Simplifer.simplify() I noticed that you have to iterate over the whole expression a second time. This does increase the time complexity of the evaluation.
With n being the input size, s being the additional steps exp4j has to take backwards sometimes and p being the simplfied steps: exp4j's time complexity is currently O(n) = 2*(n+s), because for evaluation there's one go over the input for tokenization and one for calculation.  After your patch it's O(n) = 3*(n+s) - p since there's an extra iteration over the input.

Maybe it makes sense to make this an optional mechanism in exp4j, so that a user can activate it if he does know that the optimization will benefit him.
I will check this with your implementation and a large expression and post the results.

So up to a expression length of 163840 statements it seems your implementation is still faster than the original one. Needless to say that I am impressed ;)

Im just thinking: Wouldn't it make sense to put this optimization directly into the tokenizer? Although it would have to check the following two tokens before returning the first one, but these can then be cached internally, so the perfomance gain would be even stabler with large inputs?

And now I see that you already have the ArrayStack optimization in the code base, so the impact of large inputs is even smaller with the much faster Stack impl.
I guess I will have to write a test with an astronomically long input to finally see the old naive implementation overtake your optimized one ;)

Yes, the computational complexity of build() is increased.
Thinking of the library as a whole, in the worst case scenario there's an evaluate() for every build(), and more likely, several calls to evaluate() for every build(), so, for evaluate() the change is from O(n) = k*(n+s) to O(n) = k*(n-p+s) considering no simplifications there's no change whatsoever, but given a large expression it's highly unlikely to have p = 0.
This of course changes with the usage given to exp4j, my reasoning was:

No problem with small expressions
Big expressions and few variables -> lot's to simplify
Big expressions and lots of variables -> computational hell no matter what

Apparently I forgot to add the issue tag in commit 742f6e1891e0a528751dd8e1303e6e09070f38ac, which actually adds a system property (exp4j.simplify_enabled) to disable the simplifier  (I currently use it for testing the code).
About adding the code to Tokenizer, it might be a good idea, I did this way because it seemed cleaner, and probably easier to add other optimizations in the future.
Those numbers where before adding ArrayStack, currently the performance of exp4j is around ~30% of compiled Java math, which IMHO is blazing fast.

How about something like this in the builder pattern instead:
new EpressionBuilder("3+4")
    .optimize()       // a clearly documented builder method that turns on co optimization
    .build();

I don't think I like very much the idea of using a property since it will not be convienient in a multi-threaded environment where optimized and non optimized expression have to be evaluated.

I added a branch cherry picking your Simplifier approach and added some documentation for the suggested feature:
https://github.com/fasseg/exp4j/tree/optimize

Sorry for the long absence I had trouble with 2-factor auth (ps: be careful when changing phones... sigh).
The idea sounds great, and you are absolutely right about the system property.

Okay so I will merge this into master soon, when I find some time...

Feature has been merged to master


Insert !default in colors variables

For example in ls-theme-gray
http://robots.thoughtbot.com/sass-default

@diegoeis what is the main goal of this issue?
If someone forgot to use the CSS class for themes in html tag, it should show the ls-theme-gray?

@diegoeis and @brunoeduardo, I changed the issue description so it fits the real goal.

:+1:


[netcpp] new port

[x] Changes comply with the maintainer guide.
[x] SHA512s are updated for each updated download.
[x] The "supports" clause reflects platforms that may be fixed by this new version.
[x] Any fixed CI baseline entries are removed from that file.
[x] Any patches that are no longer applied are deleted from the port's directory.
[x] The version database is fixed by rerunning ./vcpkg x-add-version --all and committing the result.
[x] Only one version is added to each modified port's versions file.

@microsoft-github-policy-service agree

fixed #40252

Please get failure logs here for x64-linux:
[1/12] /usr/bin/c++ -DNETCPP_BUILD -I/mnt/vcpkg-ci/b/netcpp/src/v0.3.4-acd1d1d744.clean/src -I/mnt/vcpkg-ci/b/netcpp/src/v0.3.4-acd1d1d744.clean/include -fPIC -g -std=gnu++20 -Winvalid-pch -x c++-header -include /mnt/vcpkg-ci/b/netcpp/x64-linux-dbg/CMakeFiles/netcpp.dir/cmake_pch.hxx -MD -MT CMakeFiles/netcpp.dir/cmake_pch.hxx.gch -MF CMakeFiles/netcpp.dir/cmake_pch.hxx.gch.d -o CMakeFiles/netcpp.dir/cmake_pch.hxx.gch -c /mnt/vcpkg-ci/b/netcpp/x64-linux-dbg/CMakeFiles/netcpp.dir/cmake_pch.hxx.cxx
FAILED: CMakeFiles/netcpp.dir/cmake_pch.hxx.gch
/usr/bin/c++ -DNETCPP_BUILD -I/mnt/vcpkg-ci/b/netcpp/src/v0.3.4-acd1d1d744.clean/src -I/mnt/vcpkg-ci/b/netcpp/src/v0.3.4-acd1d1d744.clean/include -fPIC -g -std=gnu++20 -Winvalid-pch -x c++-header -include /mnt/vcpkg-ci/b/netcpp/x64-linux-dbg/CMakeFiles/netcpp.dir/cmake_pch.hxx -MD -MT CMakeFiles/netcpp.dir/cmake_pch.hxx.gch -MF CMakeFiles/netcpp.dir/cmake_pch.hxx.gch.d -o CMakeFiles/netcpp.dir/cmake_pch.hxx.gch -c /mnt/vcpkg-ci/b/netcpp/x64-linux-dbg/CMakeFiles/netcpp.dir/cmake_pch.hxx.cxx
In file included from /mnt/vcpkg-ci/b/netcpp/x64-linux-dbg/CMakeFiles/netcpp.dir/cmake_pch.hxx:5,
                 from <command-line>:
/mnt/vcpkg-ci/b/netcpp/src/v0.3.4-acd1d1d744.clean/include/net/netcpp.hpp:4:10: fatal error: format: No such file or directory
    4 | #include <format>
      |          ^~~~~~~~
compilation terminated.
ninja: build stopped: subcommand failed.

Please get failure logs here for arm64-osx:
[1/12] /Library/Developer/CommandLineTools/usr/bin/c++ -DNETCPP_BUILD -I/Users/vcpkg/Data/b/netcpp/src/v0.3.4-acd1d1d744.clean/src -I/Users/vcpkg/Data/b/netcpp/src/v0.3.4-acd1d1d744.clean/include -fPIC -g -std=gnu++20 -arch arm64 -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX14.4.sdk -Winvalid-pch -Xclang -emit-pch -Xclang -include -Xclang /Users/vcpkg/Data/b/netcpp/arm64-osx-dbg/CMakeFiles/netcpp.dir/cmake_pch.hxx -x c++-header -MD -MT CMakeFiles/netcpp.dir/cmake_pch.hxx.pch -MF CMakeFiles/netcpp.dir/cmake_pch.hxx.pch.d -o CMakeFiles/netcpp.dir/cmake_pch.hxx.pch -c /Users/vcpkg/Data/b/netcpp/arm64-osx-dbg/CMakeFiles/netcpp.dir/cmake_pch.hxx.cxx
FAILED: CMakeFiles/netcpp.dir/cmake_pch.hxx.pch
/Library/Developer/CommandLineTools/usr/bin/c++ -DNETCPP_BUILD -I/Users/vcpkg/Data/b/netcpp/src/v0.3.4-acd1d1d744.clean/src -I/Users/vcpkg/Data/b/netcpp/src/v0.3.4-acd1d1d744.clean/include -fPIC -g -std=gnu++20 -arch arm64 -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX14.4.sdk -Winvalid-pch -Xclang -emit-pch -Xclang -include -Xclang /Users/vcpkg/Data/b/netcpp/arm64-osx-dbg/CMakeFiles/netcpp.dir/cmake_pch.hxx -x c++-header -MD -MT CMakeFiles/netcpp.dir/cmake_pch.hxx.pch -MF CMakeFiles/netcpp.dir/cmake_pch.hxx.pch.d -o CMakeFiles/netcpp.dir/cmake_pch.hxx.pch -c /Users/vcpkg/Data/b/netcpp/arm64-osx-dbg/CMakeFiles/netcpp.dir/cmake_pch.hxx.cxx
In file included from <built-in>:1:
In file included from /Users/vcpkg/Data/b/netcpp/arm64-osx-dbg/CMakeFiles/netcpp.dir/cmake_pch.hxx:5:
In file included from /Users/vcpkg/Data/b/netcpp/src/v0.3.4-acd1d1d744.clean/include/net/netcpp.hpp:7:
/Users/vcpkg/Data/b/netcpp/src/v0.3.4-acd1d1d744.clean/include/net/winsock.hpp:3:10: fatal error: 'WinSock2.h' file not found
#include <WinSock2.h>
         ^~~~~~~~~~~~
1 error generated.
ninja: build stopped: subcommand failed.

The usage test passed on x64-windows (header files found):
netcpp provides CMake targets:

    find_package(netcpp CONFIG REQUIRED)
    target_link_libraries(main PRIVATE netcpp::netcpp)

If you are ready to be reviewed again, click Ready for review.

Thank for your review!


Add collapsible container plugin example

[x] created a CodeSandbox example for the collapsible container plugin here
[x] added a new page and the example on the website (under “/docs/demos/plugins/collapsible-container”)

Issue https://github.com/facebook/lexical/issues/2886

@akmarzhan1 I'm not sure if we necessarily need the header with the text "Collapsible Container Plugin Example. Note: this build shows how to use collapsible containers", and the grey background around the text editor. Is that visible within the iframe embed in the docs?
LGTM otherwise!

@akmarzhan1 I'm not sure if we necessarily need the header with the text "Collapsible Container Plugin Example. Note: this build shows how to use collapsible containers", and the grey background around the text editor. Is that visible within the iframe embed in the docs?
LGTM otherwise!

Yep, it is visible, would you prefer if I removed these headers from all of the examples?


请问LicenseServer新的地址在哪呢

Which Glance version and IDEA version?

Could you show Glance config picture and minimap picture?

What steps will reproduce the issue?

https://notabug.org/Nasller/LicenseServer

https://notabug.org/Nasller/LicenseServer

新地址噶了


[tesseract] Update to 5.4.1

Fixes https://github.com/microsoft/vcpkg/issues/39514
Delete fix-depend-libarchive.patch.

[X] Changes comply with the maintainer guide.
[X] SHA512s are updated for each updated download.
[ ] The "supports" clause reflects platforms that may be fixed by this new version.
[ ] Any fixed CI baseline entries are removed from that file.
[X] Any patches that are no longer applied are deleted from the port's directory.
[X] The version database is fixed by rerunning ./vcpkg x-add-version --all and committing the result.
[X] Only one version is added to each modified port's versions file.

All features passed with following triplets:
x64-windows
x64-windows-static

Thanks for the update!


WIP: Revert to Python 3.7

Maybe the problem with #2409 is just nipype + Python 3.8+.

I wonder if this is the same segfault
Traceback (most recent call last):
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/plugins/multiproc.py", line 67, in run_node
    result["result"] = node.run(updatehash=updatehash)
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py", line 516, in run
    result = self._run_interface(execute=True)
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py", line 635, in _run_interface
    return self._run_command(execute)
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py", line 741, in _run_command
    result = self._interface.run(cwd=outdir)
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/interfaces/base/core.py", line 434, in run
    runtime = self._run_interface(runtime)
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/interfaces/fsl/preprocess.py", line 164, in _run_interface
    self.raise_exception(runtime)
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/interfaces/base/core.py", line 760, in raise_exception
    ).format(**runtime.dictcopy())
RuntimeError: Command:
bet /scratch/fmriprep_wf/single_subject_100185_wf/func_preproc_task_machinegame_run_02_wf/initial_boldref_wf/enhance_and_skullstrip_bold_wf/n4_correct/ref_sbref_corrected.nii.gz /scratch/fmriprep_wf/single_subject_100185_wf/func_preproc_task_machinegame_run_02_wf/initial_boldref_wf/enhance_and_skullstrip_bold_wf/skullstrip_first_pass/ref_sbref_corrected_brain.nii.gz -f 0.20 -m
Standard output:

Standard error:
Segmentation fault (core dumped)
Return code: 0

i'd like to test locally first, but if it ends up being complicated i'm fine with downgrading.

Well, these are just experiments, so I'll see if that's the root of it. Won't merge anything.

Another option: Can we try FSL 6, if we're using neurodocker builds?

this can be closed since #2409 is in


chore: Include .envrc to repo and a bunch of goodies

Added task runner Taskfile.dev and basic Taskfile
Bumped devenv.lock for devenv v1.1
More informative pytest output

[!NOTE]
remember to upgrade devenv to 1.1 so devenv.lock is compatible

Example output ouf 7b9cad9:


[custom channels]: update to unmerged release branch of lnd 0.18.4-beta

This PR prepares all compile time changes that will come with lnd v0.18.4-beta. We don't have a tag for v0.18.4-beta yet, but the release branch will remain stable (meaning only new PRs will be added).
So we'll still need a version bump PR later, but it should only be a go.mod/go.sum bump, which means the main review can be done in this PR.
Full serialized dependency list can be seen here: https://github.com/lightninglabs/lightning-terminal/pull/848

Pull Request Test Coverage Report for Build<PHONE_NUMBER>0
Details

21 of 374 (5.61%)  changed or added relevant lines in 15 files are covered.
71 unchanged lines in 14 files lost coverage.
Overall coverage decreased (-0.1%) to 40.318%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

tapcfg/config.go
0
1
0.0%

itest/utils.go
0
2
0.0%

tapchannel/aux_closer.go
0
2
0.0%

tapchannelmsg/records.go
2
4
50.0%

rfq/order.go
0
4
0.0%

tapchannel/aux_traffic_shaper.go
0
8
0.0%

tapchannel/aux_leaf_signer.go
2
19
10.53%

rfqmsg/records.go
0
18
0.0%

tapchannel/aux_funding_controller.go
0
31
0.0%

tapchannelmsg/custom_channel_data.go
0
33
0.0%

Files with Coverage Reduction
New Missed Lines
%

tapchannel/aux_closer.go
1
0.0%

tapdb/addrs.go
2
79.04%

tapgarden/planter.go
2
74.87%

asset/asset.go
2
81.8%

internal/test/helpers.go
3
86.62%

rfqmsg/buy_accept.go
3
0.0%

tapchannel/aux_leaf_signer.go
3
34.49%

universe/interface.go
4
50.22%

tapchannel/aux_funding_controller.go
4
0.0%

tapchannel/aux_sweeper.go
7
0.0%

Totals

Change from base Build<PHONE_NUMBER>2:
-0.1%

Covered Lines:
24211

Relevant Lines:
60050

💛  - Coveralls

Similar to https://github.com/lightninglabs/loop/pull/828, I bumped to lndclient v0.18.4-0 which references https://github.com/lightningnetwork/lnd/pull/9183 (commit https://github.com/lightningnetwork/lnd/pull/9183/commits/ca3bde901eb86638256a72fd17b75ce5951d119f) which should remain stable, so we can start the main review work here.

Is this PR going to get more commits as we move forward, or is this it's final-ish state?

There will be one more round of go.mod bumps across all projects once the final/tagged version of v0.18.4-beta is out. But this PR is now complete as is, as soon as the CI is fixed (which I will look into momentarily).

I had to add 2 commits to address some of the RFQ changes (and to make the itests pass with the new way asset to BTC conversions now happen with more precision).
Re-requesting review from @ffranr with the ask to just take a look at the last two commits.


Game does not run in editor while throwing no errors (Error message request)

There are only general warnings when attempting to run a project in the editor while missing the steam api or the app id files. I believe there should be more specific warnings for when missing these files.

I think that those warning as actually from the Steamworks API itself.  GodotSteam doesn't actually print anything if either of those are missing with the exception of maybe an integer based on the error; unless this is what you're talking about.

That sounds good!

I'll leave this issue open so I can report back on it after I do some testing.

Hey there!  So after some testing I can't seem to get it to give me an error about the missing files.  However, I did notice some weird inconsistencies in the initialization process that I have fixed in my local copy and will push to the repo soon.
For instance, currently the initialization code is:
bool Steam::steamInit(){
	return SteamAPI_Init();
	//printf("Godot Steam initialing...\n");
	isInitSuccess = SteamAPI_Init();
	int err = FAILED;
	if(isInitSuccess){
		err = OK;
	}
	if(!SteamAPI_IsSteamRunning()){
		err = ERR_NO_CLIENT;
	}
	else if(!SteamUser()->BLoggedOn()){
		err = ERR_NO_CONNECTION;
	}
	if(err == OK && SteamUserStats() != NULL){
		// Load stats and achievements automatically
		SteamUserStats()->RequestCurrentStats();
	}
	return err;

Not sure how I missed this but noticed the first line in the function returns the bool from SteamAPI_Init() so the rest of the errors never print.  In my change that first line is removed so that the module will give a more specific reason why it fails to work.  Not only that but I added a dictionary response that gives a verbal reason along with the bool response so it is more clear.  This, sadly, does not give you better information about missing files but does give some idea as to other reasons initialization fails.
Some other things I found in C++ about looking for particular files seems to be a bit of a headache when accounting for all possible operating systems.  That being said, I will mark this as closed but will keep it in my personal list and continue to look for a more elegant solution.


Unclear documentaion

Under https://github.com/thomseddon/node-oauth2-server#features you say you support: authorization_code, password, refresh_token, client_credentials and extension grant types.
Under https://github.com/thomseddon/node-oauth2-server#options you say: currently the module supports password and refresh_token
Just thought you would want to know

This has been fixed since


Config option to chose claim color based on owner instead of hashed location

@Patbox could you look at this PR?
I think it would be a valuable feature to people other than me.
Example where it makes it more visually appealing:


[Snyk] Security upgrade golang from 1.18.6 to 1.19.8

This PR was automatically created by Snyk using the credentials of a real user.Keeping your Docker base image up-to-date means you’ll benefit from security fixes in the latest version of your chosen image.
Changes included in this PR

Dockerfile

We recommend upgrading to golang:1.19.8, as this image has only 140 known vulnerabilities. To do this, merge this pull request, then verify your application still works as expected.
Some of the most important vulnerabilities in your base image include:

Severity
Priority Score / 1000
Issue
Exploit Maturity

714
Exposure of Resource to Wrong Sphere SNYK-DEBIAN11-CURL-3065656
No Known Exploit

714
Integer Overflow or Wraparound SNYK-DEBIAN11-GIT-3232722
No Known Exploit

714
Integer Overflow or Wraparound SNYK-DEBIAN11-GIT-3232724
No Known Exploit

714
Out-of-bounds Read SNYK-DEBIAN11-LIBTASN16-3061097
No Known Exploit

686
Allocation of Resources Without Limits or Throttling SNYK-DEBIAN11-OPENSSL-5661566
No Known Exploit

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open fix PRs.
For more information:
🧐 View latest project report
🛠 Adjust project settings

Learn how to fix vulnerabilities with free interactive lessons:
🦉 Allocation of Resources Without Limits or Throttling

Already fixed as 1.20.x