"TypeError: 'ObjCInstance' object is not callable" on macOS High Sierra

In High Sierra (macOS 10.13), I am unable to use Toga or Toga-demo due to a TypeError. I was able to duplicate this on a fresh install of High Sierra in a VM; when I installed Toga and Toga-demo on a fresh install of Sierra (10.12), Toga and Toga-demo worked with no issues.
This has similar symptoms as issue https://github.com/pybee/toga/issues/154, but downgrading Rubicon has not solved the problem.
Details
Python Installation
$ uname -a
Darwin Andrews-Mac.local 17.0.0 Darwin Kernel Version 17.0.0: Thu Aug 24 21:48:19 PDT 2017; root:xnu-4570.1.46~2/RELEASE_X86_64 x86_64
$
$ gcc --version
Configured with: --prefix=/Library/Developer/CommandLineTools/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 9.0.0 (clang-900.0.37)
Target: x86_64-apple-darwin17.0.0
Thread model: posix
InstalledDir: /Library/Developer/CommandLineTools/usr/bin
$
$ CFLAGS="-I$(brew --prefix openssl)/include -O3" \
LDFLAGS="-L$(brew --prefix openssl)/lib" \
env PYTHON_CONFIGURE_OPTS="--enable-framework" pyenv install -v 3.6.3
...
Installed Python-3.6.3 to /Users/ame/.pyenv/versions/3.6.3
$
$ pyenv shell 3.6.3
$
$ python -V -V
Python 3.6.3 (default, Oct  9 2017, 17:43:29)
[GCC 4.2.1 Compatible Apple LLVM 9.0.0 (clang-900.0.37)]

Virtualenv
$ python -m venv .venv
$
$ source .venv/bin/activate
$
$ pip install toga toga-demo
Collecting toga
  Downloading toga-0.2.15-py3-none-any.whl
Collecting toga-demo
  Downloading toga_demo-0.2.15-py3-none-any.whl
Collecting toga-cocoa; sys_platform == "darwin" (from toga)
  Downloading toga_cocoa-0.2.15-py3-none-any.whl
Collecting toga-core>=0.2.15 (from toga-cocoa; sys_platform == "darwin"->toga)
  Downloading toga_core-0.2.15-py3-none-any.whl (413kB)
    100% |████████████████████████████████| 419kB 2.6MB/s
Collecting rubicon-objc>=0.2.8 (from toga-cocoa; sys_platform == "darwin"->toga)
  Downloading rubicon_objc-0.2.8-py3-none-any.whl
Collecting colosseum>=0.1.6 (from toga-core>=0.2.15->toga-cocoa; sys_platform == "darwin"->toga)
  Downloading colosseum-0.1.6-py3-none-any.whl
Installing collected packages: colosseum, toga-core, rubicon-objc, toga-cocoa, toga, toga-demo
Successfully installed colosseum-0.1.6 rubicon-objc-0.2.8 toga-0.2.15 toga-cocoa-0.2.15 toga-core-0.2.15 toga-demo-0.2.15

First Attempt
$ toga-demo
Traceback (most recent call last):
  File "/Users/ame/workspace/org.elgert/toga/.venv/bin/toga-demo", line 11, in <module>
    sys.exit(run())
  File "/Users/ame/workspace/org.elgert/toga/.venv/lib/python3.6/site-packages/toga_demo/__main__.py", line 5, in run
    main().main_loop()
  File "/Users/ame/workspace/org.elgert/toga/.venv/lib/python3.6/site-packages/toga_cocoa/app.py", line 167, in main_loop
    self._startup()
  File "/Users/ame/workspace/org.elgert/toga/.venv/lib/python3.6/site-packages/toga_cocoa/app.py", line 95, in _startup
    self._impl = NSApplication.sharedApplication()
TypeError: 'ObjCInstance' object is not callable
$
$ python
Python 3.6.3 (default, Oct  9 2017, 17:43:29)
[GCC 4.2.1 Compatible Apple LLVM 9.0.0 (clang-900.0.37)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> from rubicon.objc import *
>>> NSBundle = ObjCClass('NSBundle')
>>> NSBundle.mainBundle()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: 'ObjCInstance' object is not callable
>>> exit()

Downgrade Rubicon
Rubicon-objc==0.2.7
$ pip install rubicon-objc==0.2.7
Collecting rubicon-objc==0.2.7
  Downloading rubicon_objc-0.2.7-py3-none-any.whl
Installing collected packages: rubicon-objc
  Found existing installation: rubicon-objc 0.2.8
    Uninstalling rubicon-objc-0.2.8:
      Successfully uninstalled rubicon-objc-0.2.8
Successfully installed rubicon-objc-0.2.7
$
$ toga-demo
Traceback (most recent call last):
  File "/Users/ame/workspace/org.elgert/toga/.venv/bin/toga-demo", line 11, in <module>
    sys.exit(run())
  File "/Users/ame/workspace/org.elgert/toga/.venv/lib/python3.6/site-packages/toga_demo/__main__.py", line 5, in run
    main().main_loop()
  File "/Users/ame/workspace/org.elgert/toga/.venv/lib/python3.6/site-packages/toga_cocoa/app.py", line 167, in main_loop
    self._startup()
  File "/Users/ame/workspace/org.elgert/toga/.venv/lib/python3.6/site-packages/toga_cocoa/app.py", line 95, in _startup
    self._impl = NSApplication.sharedApplication()
TypeError: 'ObjCInstance' object is not callable

Rubicon-objc==0.2.6
$ pip install rubicon-objc==0.2.6
Collecting rubicon-objc==0.2.6
  Downloading rubicon_objc-0.2.6-py3-none-any.whl
Installing collected packages: rubicon-objc
  Found existing installation: rubicon-objc 0.2.7
    Uninstalling rubicon-objc-0.2.7:
      Successfully uninstalled rubicon-objc-0.2.7
Successfully installed rubicon-objc-0.2.6
$
$ toga-demo
Traceback (most recent call last):
  File "/Users/ame/workspace/org.elgert/toga/.venv/bin/toga-demo", line 7, in <module>
    from toga_demo.__main__ import run
  File "/Users/ame/workspace/org.elgert/toga/.venv/lib/python3.6/site-packages/toga_demo/__main__.py", line 2, in <module>
    from toga_demo.app import main
  File "/Users/ame/workspace/org.elgert/toga/.venv/lib/python3.6/site-packages/toga_demo/app.py", line 4, in <module>
    import toga
  File "/Users/ame/workspace/org.elgert/toga/.venv/lib/python3.6/site-packages/toga/__init__.py", line 114, in <module>
    set_platform()
  File "/Users/ame/workspace/org.elgert/toga/.venv/lib/python3.6/site-packages/toga/__init__.py", line 86, in set_platform
    local_vars['platform'] = importlib.import_module(module_name)
  File "/Users/ame/.pyenv/versions/3.6.3/Python.framework/Versions/3.6/lib/python3.6/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "/Users/ame/workspace/org.elgert/toga/.venv/lib/python3.6/site-packages/toga_cocoa/__init__.py", line 2, in <module>
    from .app import *
  File "/Users/ame/workspace/org.elgert/toga/.venv/lib/python3.6/site-packages/toga_cocoa/app.py", line 8, in <module>
    from .command import Command, Group
  File "/Users/ame/workspace/org.elgert/toga/.venv/lib/python3.6/site-packages/toga_cocoa/command.py", line 3, in <module>
    from .widgets.icon import Icon
  File "/Users/ame/workspace/org.elgert/toga/.venv/lib/python3.6/site-packages/toga_cocoa/widgets/icon.py", line 4, in <module>
    from ..libs import NSImage
  File "/Users/ame/workspace/org.elgert/toga/.venv/lib/python3.6/site-packages/toga_cocoa/libs/__init__.py", line 1, in <module>
    from .appkit import *
  File "/Users/ame/workspace/org.elgert/toga/.venv/lib/python3.6/site-packages/toga_cocoa/libs/appkit.py", line 232, in <module>
    NSColor.declare_class_property('alternateSelectedControlColor')
  File "/Users/ame/workspace/org.elgert/toga/.venv/lib/python3.6/site-packages/rubicon/objc/objc.py", line 1300, in __getattr__
    raise AttributeError('%s.%s %s has no attribute %s' % (type(self).__module__, type(self).__qualname__, self.objc_class.name, name))
AttributeError: rubicon.objc.objc.ObjCClass NSColor has no attribute declare_class_property

Rubicon-objc==0.2.4
$ pip install rubicon-objc==0.2.4
Collecting rubicon-objc==0.2.4
  Downloading rubicon_objc-0.2.4-py3-none-any.whl
Installing collected packages: rubicon-objc
  Found existing installation: rubicon-objc 0.2.6
    Uninstalling rubicon-objc-0.2.6:
      Successfully uninstalled rubicon-objc-0.2.6
Successfully installed rubicon-objc-0.2.4
$
$ toga-demo
Traceback (most recent call last):
  File "/Users/ame/workspace/org.elgert/toga/.venv/lib/python3.6/site-packages/rubicon/objc/objc.py", line 1274, in __getattr__
    return self.__dict__[name]
KeyError: 'declare_class_property'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/Users/ame/workspace/org.elgert/toga/.venv/bin/toga-demo", line 7, in <module>
    from toga_demo.__main__ import run
  File "/Users/ame/workspace/org.elgert/toga/.venv/lib/python3.6/site-packages/toga_demo/__main__.py", line 2, in <module>
    from toga_demo.app import main
  File "/Users/ame/workspace/org.elgert/toga/.venv/lib/python3.6/site-packages/toga_demo/app.py", line 4, in <module>
    import toga
  File "/Users/ame/workspace/org.elgert/toga/.venv/lib/python3.6/site-packages/toga/__init__.py", line 114, in <module>
    set_platform()
  File "/Users/ame/workspace/org.elgert/toga/.venv/lib/python3.6/site-packages/toga/__init__.py", line 86, in set_platform
    local_vars['platform'] = importlib.import_module(module_name)
  File "/Users/ame/.pyenv/versions/3.6.3/Python.framework/Versions/3.6/lib/python3.6/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "/Users/ame/workspace/org.elgert/toga/.venv/lib/python3.6/site-packages/toga_cocoa/__init__.py", line 2, in <module>
    from .app import *
  File "/Users/ame/workspace/org.elgert/toga/.venv/lib/python3.6/site-packages/toga_cocoa/app.py", line 8, in <module>
    from .command import Command, Group
  File "/Users/ame/workspace/org.elgert/toga/.venv/lib/python3.6/site-packages/toga_cocoa/command.py", line 3, in <module>
    from .widgets.icon import Icon
  File "/Users/ame/workspace/org.elgert/toga/.venv/lib/python3.6/site-packages/toga_cocoa/widgets/icon.py", line 4, in <module>
    from ..libs import NSImage
  File "/Users/ame/workspace/org.elgert/toga/.venv/lib/python3.6/site-packages/toga_cocoa/libs/__init__.py", line 1, in <module>
    from .appkit import *
  File "/Users/ame/workspace/org.elgert/toga/.venv/lib/python3.6/site-packages/toga_cocoa/libs/appkit.py", line 232, in <module>
    NSColor.declare_class_property('alternateSelectedControlColor')
  File "/Users/ame/workspace/org.elgert/toga/.venv/lib/python3.6/site-packages/rubicon/objc/objc.py", line 1277, in __getattr__
    raise AttributeError('ObjCClass %s has no attribute %s' % (self.name, name))
AttributeError: ObjCClass NSColor has no attribute declare_class_property

@elgertam Thanks for the report. As you've noted, this is almost certainly a manifestation of the same problem as #154, which was in turned caused by pybee/rubicon-objc#40.
The problem is caused by subtle changes that Cocoa introduces between versions. Quoting @dgelessus from the Rubicon ticket:

The issue is that Objective-C has two syntaxes (method calling with [object name], and property access with object.name), and rubicon-objc maps both of them to Python attribute access. When there's both a property and a method with the same name, rubicon-objc prefers the property. That means that if there's a method called name, and in a future version a property called name is added, the meaning of object.name in rubicon-objc suddenly changes. However in Objective-C that change doesn't affect existing programs, because the [object name] syntax still works, even if name is also a property.

When Sierra came out, NSBundle.mainBundle() and the NSColor predefined colors were modified into properties. This was fixed in 9faf7638
In this case, it looks like High Sierra has turned NSApplication.sharedApplication() into a property. The fix will be exactly the same as it was for NSBundle.mainBundle - explicitly declare the NSApplication.sharedApplication class property, then change references to be attributes, not method calls.

I might have suggested this before - to prevent this issue from reappearing every time a new macOS version comes out, should we by default require calling all methods explicitly, even if they are declared as Objective-C properties? That way the behavior would be forward-compatible. The downside is that it would require a declare_property call for each method that should be usable as a property...

@dgelessus I can see what you're proposing, but IMHO the approach we've got here is more idiomatic - both in Python and objective C. Yes, it means some headaches every time a new macOS or iOS release comes out, but they're relatively easy bugs to fix, once they're identified.

So locally I have fixed the NSApplication.sharedApplication() and NSWindow.mainWindow() issues.  Not sure I corrected them in the correct place.  Did a search and they were fixed in a test file in rubicon so I corrected them in toga/cocoa source tree.
Now I am getting this error.
File "/Library/Frameworks/Python.framework/Versions/3.4/bin/toga-demo", line 9, in
load_entry_point('toga-demo==0.3.0.dev1', 'console_scripts', 'toga-demo')()
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/toga_demo-0.3.0.dev1-py3.4.egg/toga_demo/main.py", line 5, in run
main().main_loop()
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/toga_core-0.3.0.dev1-py3.4.egg/toga/app.py", line 147, in main_loop
self._impl.main_loop()
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/toga_cocoa-0.3.0.dev1-py3.4.egg/toga_cocoa/app.py", line 158, in main_loop
self.create()
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/toga_cocoa-0.3.0.dev1-py3.4.egg/toga_cocoa/app.py", line 107, in create
self.interface.startup()
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/toga_demo-0.3.0.dev1-py3.4.egg/toga_demo/app.py", line 20, in startup
left_table.insert(None, 'root1', 'value1')
I have interrogated left_table, and indeed it does not have an "insert" method.  So any suggestions?

@mischievous This looks like an issue in Toga itself or the demo app, not in Rubicon. Can you open an issue for this on the Toga repo? Thanks!

This has been corrected with Rubicon 0.2.10.

@NewNork It looks like you're using a Toga version that doesn't have the fix for High Sierra. The fix was added in c66745e241ea2ee73af552a32cbc24788800064f, but as far as I can tell there hasn't yet been a Toga release that includes this fix. You can try installing Toga directly from the repo, using python3 -m pip install git+https://github.com/pybee/toga.git. That will include unreleased changes, such as the High Sierra fix.

Hi @dgelessus
Just to confirm, I have the same error, then read all the comments, and update the toga package as you mention (python3 -m pip install git+https://github.com/pybee/toga.git), but the problem still happening in High Sierra :(
here is what I do:
created virtualenv:
$ mkvirtualenv toga-demo --python=`which python3`
Running virtualenv with interpreter /usr/local/bin/python3
Using base prefix '/usr/local/Cellar/python3/3.6.3/Frameworks/Python.framework/Versions/3.6'
New python executable in /Users/juanfunez/Envs/toga-demo/bin/python3.6
Also creating executable in /Users/juanfunez/Envs/toga-demo/bin/python
Installing setuptools, pip, wheel...done.

installed toga for the first time:
$ pip install toga-demo
Collecting toga-demo
  Downloading toga_demo-0.2.15-py3-none-any.whl
Collecting toga==0.2.15 (from toga-demo)
  Downloading toga-0.2.15-py3-none-any.whl
Collecting toga-cocoa; sys_platform == "darwin" (from toga==0.2.15->toga-demo)
  Downloading toga_cocoa-0.2.15-py3-none-any.whl
Collecting rubicon-objc>=0.2.8 (from toga-cocoa; sys_platform == "darwin"->toga==0.2.15->toga-demo)
  Downloading rubicon_objc-0.2.10-py2.py3-none-any.whl (59kB)
    100% |████████████████████████████████| 61kB 416kB/s
Collecting toga-core>=0.2.15 (from toga-cocoa; sys_platform == "darwin"->toga==0.2.15->toga-demo)
  Downloading toga_core-0.2.15-py3-none-any.whl (413kB)
    100% |████████████████████████████████| 419kB 599kB/s
Collecting colosseum>=0.1.6 (from toga-core>=0.2.15->toga-cocoa; sys_platform == "darwin"->toga==0.2.15->toga-demo)
  Downloading colosseum-0.1.6-py3-none-any.whl
Installing collected packages: rubicon-objc, colosseum, toga-core, toga-cocoa, toga, toga-demo
Successfully installed colosseum-0.1.6 rubicon-objc-0.2.10 toga-0.2.15 toga-cocoa-0.2.15 toga-core-0.2.15 toga-demo-0.2.15

Run toga for the first time:
$ toga-demo
Traceback (most recent call last):
  File "/Users/juanfunez/Envs/toga-demo/bin/toga-demo", line 11, in <module>
    sys.exit(run())
  File "/Users/juanfunez/Envs/toga-demo/lib/python3.6/site-packages/toga_demo/__main__.py", line 5, in run
    main().main_loop()
  File "/Users/juanfunez/Envs/toga-demo/lib/python3.6/site-packages/toga_cocoa/app.py", line 167, in main_loop
    self._startup()
  File "/Users/juanfunez/Envs/toga-demo/lib/python3.6/site-packages/toga_cocoa/app.py", line 95, in _startup
    self._impl = NSApplication.sharedApplication()
TypeError: 'ObjCInstance' object is not callable

check the installed package's versions in venv:
$ pip freeze
colosseum==0.1.6
rubicon-objc==0.2.10
toga==0.2.15
toga-cocoa==0.2.15
toga-core==0.2.15
toga-demo==0.2.15

Here I saw your fix, and applied:
$ python -m pip install git+https://github.com/pybee/toga.git
Collecting git+https://github.com/pybee/toga.git
  Cloning https://github.com/pybee/toga.git to /private/var/folders/vk/01h678ys2b9gxc1dsp6cjdt40000gn/T/pip-6hw4q6b3-build
Requirement already satisfied: toga-cocoa in /Users/juanfunez/Envs/toga-demo/lib/python3.6/site-packages (from toga==0.3.0.dev1)
Requirement already satisfied: toga-core>=0.2.15 in /Users/juanfunez/Envs/toga-demo/lib/python3.6/site-packages (from toga-cocoa->toga==0.3.0.dev1)
Requirement already satisfied: rubicon-objc>=0.2.8 in /Users/juanfunez/Envs/toga-demo/lib/python3.6/site-packages (from toga-cocoa->toga==0.3.0.dev1)
Requirement already satisfied: colosseum>=0.1.6 in /Users/juanfunez/Envs/toga-demo/lib/python3.6/site-packages (from toga-core>=0.2.15->toga-cocoa->toga==0.3.0.dev1)
Installing collected packages: toga
  Found existing installation: toga 0.2.15
    Uninstalling toga-0.2.15:
      Successfully uninstalled toga-0.2.15
  Running setup.py install for toga ... done
Successfully installed toga-0.3.0.dev1

run again toga-demo:
$ toga-demo
Traceback (most recent call last):
  File "/Users/juanfunez/Envs/toga-demo/bin/toga-demo", line 11, in <module>
    sys.exit(run())
  File "/Users/juanfunez/Envs/toga-demo/lib/python3.6/site-packages/toga_demo/__main__.py", line 5, in run
    main().main_loop()
  File "/Users/juanfunez/Envs/toga-demo/lib/python3.6/site-packages/toga_cocoa/app.py", line 167, in main_loop
    self._startup()
  File "/Users/juanfunez/Envs/toga-demo/lib/python3.6/site-packages/toga_cocoa/app.py", line 95, in _startup
    self._impl = NSApplication.sharedApplication()
TypeError: 'ObjCInstance' object is not callable

here is the packages versions installed right now:
$ pip freeze
colosseum==0.1.6
rubicon-objc==0.2.10
toga==0.3.0.dev1
toga-cocoa==0.2.15
toga-core==0.2.15
toga-demo==0.2.15

I missed something?
HTH

@jfunez Unfortunately, the instructions @dgelessus gave won't work - the Toga repository contains a number of sub-packages, and there's no way to install the sub-packages directly from git. If you look at your pip freeze output, you've got an updated toga - but not toga-cocoa or toga-core, which is where the important bits are.
To install the development version of Toga, you need to run:
$ git clone https:///github.com/pybee/toga.git
$ cd toga
$ pip install src/core
$ pip install src/cocoa

You could install them both directly via pip:
pip install git+https://github.com/pybee/toga.git#egg=version_subpkg&subdirectory=src/core
pip install git+https://github.com/pybee/toga.git#egg=version_subpkg&subdirectory=src/coca

It probably makes more sense to clone it like @freakboy3742 said, however.

Hi @freakboy3742 @clokep
I followed your instructions of @freakboy3742, but now I'm having this error when running the demo:
Traceback (most recent call last):
  File "/usr/local/Cellar/python3/3.6.3/Frameworks/Python.framework/Versions/3.6/lib/python3.6/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/usr/local/Cellar/python3/3.6.3/Frameworks/Python.framework/Versions/3.6/lib/python3.6/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/Users/juanfunez/Temp/toga-demo/toga/demo/toga_demo/__main__.py", line 8, in <module>
    run()
  File "/Users/juanfunez/Temp/toga-demo/toga/demo/toga_demo/__main__.py", line 5, in run
    main().main_loop()
  File "/Users/juanfunez/Temp/toga-demo/toga/src/core/toga/app.py", line 153, in main_loop
    self._impl.main_loop()
  File "/Users/juanfunez/Temp/toga-demo/toga/src/cocoa/toga_cocoa/app.py", line 160, in main_loop
    self.create()
  File "/Users/juanfunez/Temp/toga-demo/toga/src/cocoa/toga_cocoa/app.py", line 109, in create
    self.interface.startup()
  File "/Users/juanfunez/Temp/toga-demo/toga/demo/toga_demo/app.py", line 19, in startup
    left_table.insert(None, 'root1', 'value1')
AttributeError: 'Table' object has no attribute 'insert'

I also executed the test and everything is fine...
I'm a noob with Toga, so maybe I missing something basic, do I?

@freakboy3742 Cheers mate. That worked. Hopefully they push the changes soon.

@jfunez As you might guess when you install a version of code direct from a Git repository, you're going to find bugs sometimes :-) We're in the middle of a huge refactor, and there are still bugs in some areas of the code (the toga-demo is just one example).
You will probably have more luck looking in the examples directory of the Toga repository - those examples are more likely to be up to date.

Hi @freakboy3742
With the help of @Dayof I found a setup to get the examples working \o/
The working environment is:
$ pip freeze
colosseum==0.1.6
rubicon-objc==0.2.10
toga==0.2.15
toga-cocoa==0.3.0.dev1
toga-core==0.3.0.dev1

Thanks to everyone who helped me!

@jfunez How should I install cocoa==0.3.0.dev1 as I get the error

Could not find a version that satisfies the requirement toga-cocoa==0.3.0.dev1

@tourdownunder

Clone toga
Setup virtualenv like the instructions here https://pybee.org/contributing/how/first-time/setup/
pip install -e src/core src/cocoa

thanks. i worked out i could use
pip install git+https://github.com/pybee/toga.git#subdirectory:/tree/master/src/cocoa
though then i had another issue so i'll try your way.

I am trying
pip3 install git+https://github.com/pybee/toga.git#subdirectory:/tree/master/src/cocoa
but I am receiving the following error,
Could not find a version that satisfies the requirement toga-cocoa==0.3.0.dev5
How can I fix that, which commit in current development version I need to use?

Checkout out 5ffd72284c2293057a1b6bde7a55abea83c91ab7 worked for me @promentol

On High Sierra, I used:
pip install toga-demo==0.3.0.dev9
to get a working version.
On my MacBook running Sierra, 0.2.15 worked

Fresh pip install on macOS mojave still has this error.
This works though:
$ git clone https:///github.com/pybee/toga.git
$ cd toga
$ pip install src/core
$ pip install src/cocoa


Changed the wording to reflect new location

But if you ask me, this paragraph doesn't make much sense without understanding what shims are we talking about here
So it might be better to move it below as well?

Thx!


OAuth2 credentials rotation

Hi there!
I have a question regarding using superset with OAuth2.
I have my custom OAuth provider which rotates the credentials from time to time.
Thing is that Superset doesn't support(or maybe it does?) credentials rotation.
There is another service which updates the credentials file. After that I can read these credentials with the help of something like watchdog. And then I'm not sure what to do, e.g. how to update current OAuth provider.
My question is:
Can someone point on a possible workaround or other ways to implement this mechanism?
If I am asking in the wrong place, can you point to the right one or to the right person?
Any thoughts are appreciated!
Thanks!

@tordingo - interesting implementation.  What library are you using to accomplish the OAuth2 implementation?  Are you looking to have a background subprocess run that is pinging your service to ensure that the user re-authenticates after a certain period of time?
I am leveraging https://flask-oidc.readthedocs.io/en/latest/ for handling my authentication, so it may be a feature request for there.  If the above is the case, instead of having a watchdog, you can add in your timeout:  https://stackoverflow.com/questions/11783025/is-there-an-easy-way-to-make-sessions-timeout-in-flask#11785722


fixed extra space and centered the template , displayed a templates in tablet view...

Description
extra space left side of website and templates were not center
Fixes:  #597
Type of change
fixed extra space  and centered the templates  -------------->

displayed a ( two )  templates in tablet view --------------->

@codingkush merge conflicts

Done

Done

Done


resolve updates

I just fixed some very tricky issues in resolve that were cropping up in browserify and are now part of the test suite. I recommend upgrading to 1.1.3, since the current tests fail when browser-resolve uses the old version.
The updates address some errors with the previous opts.pathFilter implementation and some very subtle bugs when there is a ./file.js and a ./file directory.

Upgrading appears to breaks one of the browser-resolve tests. I'll iterate on resolve to see if I can get everything to pass.

All fixed in 1.1.4. I also noticed in the current browser-resolve implementation that a package.json of:
{
  "browser": {
    "xyz": "wow.js"
  }
}

does not work for require('foo/xyz') but this does:
{
  "browser": {
    "./xyz": "wow.js"
  }
}

This is because internally a ./ is prepended in the pathFilter. This is something that can be handled later in a patch, but everything is ready to go right now.

Just published under 1.7.1. The only change was upgrading resolve to 1.1.4.


Migrate Lib to Maven Central

or a lot easier would be to publish it to the gradle plugin portal:
https://docs.gradle.org/current/userguide/publishing_gradle_plugins.html
And this is something I would use right now because for some odd reason Jasypt is not getting picked up when I put the lib in the build script dependencies.


Plugin->getSubscribedEvents() should register command.COMMAND.help

Running the help command doesn't currently list this plugin's commands among those available because Plugin->getSubscribedEvents() is only registering handlers for command.COMMAND and not command.COMMAND.help.

Fixed, will tag shortly

Tag 1.0.2 released


Bug using ToolKit to query complex ticker names: Unknown brokerage symbol

Expected Behavior

Running the following command should run without errors (ex: runs well for --tickers=tBTCUSD):
dotnet QuantConnect.ToolBox.dll --app=BFXDL --from-date="20171101-00:00:00" --tickers=t1INCH:USD --resolution=Minute

Should work well as the ticker is listed in Lean/Data/symbol-properties/symbol-properties-database.csv
Actual Behavior

dotnet QuantConnect.ToolBox.dll --app=BFXDL --from-date="20171101-00:00:00" --tickers=t1INCH:USD --resolution=Minute

Gives the following error:
20211005 13:47:50.546 TRACE:: Config.GetValue(): debug-mode - Using default value: False
20211005 13:47:50.553 TRACE:: Config.Get(): Configuration key not found. Key: results-destination-folder - Using default value:
20211005 13:47:50.553 TRACE:: Config.Get(): Configuration key not found. Key: plugin-directory - Using default value:
20211005 13:47:50.556 TRACE:: Config.Get(): Configuration key not found. Key: composer-dll-directory - Using default value:
20211005 13:47:50.561 TRACE:: Composer(): Loading Assemblies from Lean/ToolBox/bin/Debug/
20211005 13:47:50.598 TRACE:: Config.Get(): Configuration key not found. Key: log-handler - Using default value: CompositeLogHandler
20211005 13:47:50.636 TRACE:: Config.Get(): Configuration key not found. Key: data-directory - Using default value: ../../../Data/
20211005 13:47:50.637 TRACE:: Config.Get(): Configuration key not found. Key: version-id - Using default value:
20211005 13:47:50.637 TRACE:: Config.Get(): Configuration key not found. Key: cache-location - Using default value: ../../../Data/
20211005 13:47:50.656 TRACE:: Config.Get(): Configuration key not found. Key: map-file-provider - Using default value: LocalDiskMapFileProvider
20211005 13:47:50.878 TRACE:: BaseWebSocketsBrokerage.Connect(): Connecting...
20211005 13:47:50.879 TRACE:: WebSocketClientWrapper connection task started: wss://api.bitfinex.com/ws/2
20211005 13:47:50.880 TRACE:: WebSocketClientWrapper.HandleConnection(wss://api.bitfinex.com/ws/2): Connecting...
20211005 13:47:56.301 TRACE:: WebSocketClientWrapper.OnOpen(): Connection opened (IsOpen:True, State:Open): wss://api.bitfinex.com/ws/2
20211005 13:47:56.301 TRACE:: BaseWebsocketsBrokerage(): WebSocket.Open. Subscribing
20211005 13:47:56.347 TRACE:: WebSocketClientWrapper connection task ended: wss://api.bitfinex.com/ws/2
20211005 13:47:56.347 TRACE:: WebSocketClientWrapper.OnClose(): Connection closed (IsOpen:False, State:CloseSent): wss://api.bitfinex.com/ws/2
20211005 13:47:56.360 ERROR:: BitfinexDownloaderProgram.BitfinexDownloader():  System.ArgumentException: Unknown brokerage symbol: 1INCH
   at QuantConnect.Brokerages.SymbolPropertiesDatabaseSymbolMapper.GetLeanSymbol(String brokerageSymbol, SecurityType securityType, String market, DateTime expirationDate, Decimal strike, OptionRight optionRight) in Lean/Brokerages/SymbolPropertiesDatabaseSymbolMapper.cs:line 120
   at QuantConnect.ToolBox.BitfinexDownloader.BitfinexDataDownloader.GetSymbol(String ticker) in Lean/ToolBox/BitfinexDownloader/BitfinexDataDownloader.cs:line 92
   at QuantConnect.ToolBox.BitfinexDownloader.BitfinexDownloaderProgram.BitfinexDownloader(IList`1 tickers, String resolution, DateTime fromDate, DateTime toDate) in Lean/ToolBox/BitfinexDownloader/BitfinexDownloaderProgram.cs:line 54

Potential Solution

I've narrowed the issue to the ApplicationParser class (Lean/Configuration/ApplicationParser.cs) that treats the ":" as a character to get nested objects (line 65). Thus coming out of the parser, the ticker is not read as "t1INCH:USD" but as two tickers "t1INCH" and "USD".
Reproducing the Problem

Running the following command should be enough to reproduce the error:
dotnet QuantConnect.ToolBox.dll --app=BFXDL --from-date="20171101-00:00:00" --tickers=t1INCH:USD --resolution=Minute

System Information

Hardware Overview:
Model Name:	iMac Pro
Model Identifier:	iMacPro1,1
Processor Name:	8-Core Intel Xeon W
Processor Speed:	3.2 GHz
Number of Processors:	1
Total Number of Cores:	8
L2 Cache (per Core):	1 MB
L3 Cache:	11 MB
Hyper-Threading Technology:	Enabled
Memory:	32 GB
System Firmware Version:	15<IP_ADDRESS>.0 (iBridge: 18.16.14759.0.1,0)
Activation Lock Status:	Disabled
Checklist

[x] I have completely filled out this template
[x] I have confirmed that this issue exists on the current master branch
[x] I have confirmed that this is not a duplicate issue by searching issues

[x] I have provided detailed steps to reproduce the issue

Hello @Martin-Molinero !
Thank you for your fast response !
Just tried, but I get the same error:
$ dotnet QuantConnect.ToolBox.dll --app=BFXDL --from-date="20171101-00:00:00" --tickers=t1INCHUSD --resolution=Minute

20211008 15:30:01.867 TRACE:: Config.GetValue(): debug-mode - Using default value: False
20211008 15:30:01.883 TRACE:: Config.Get(): Configuration key not found. Key: results-destination-folder - Using default value:
20211008 15:30:01.884 TRACE:: Config.Get(): Configuration key not found. Key: plugin-directory - Using default value:
20211008 15:30:01.887 TRACE:: Config.Get(): Configuration key not found. Key: composer-dll-directory - Using default value:
20211008 15:30:01.894 TRACE:: Composer(): Loading Assemblies from Lean/ToolBox/bin/Debug/
20211008 15:30:01.944 TRACE:: Config.Get(): Configuration key not found. Key: log-handler - Using default value: CompositeLogHandler
20211008 15:30:01.989 TRACE:: Config.Get(): Configuration key not found. Key: data-directory - Using default value: ../../../Data/
20211008 15:30:01.990 TRACE:: Config.Get(): Configuration key not found. Key: version-id - Using default value:
20211008 15:30:01.990 TRACE:: Config.Get(): Configuration key not found. Key: cache-location - Using default value: ../../../Data/
20211008 15:30:02.014 TRACE:: Config.Get(): Configuration key not found. Key: map-file-provider - Using default value: LocalDiskMapFileProvider
20211008 15:30:02.339 TRACE:: BaseWebSocketsBrokerage.Connect(): Connecting...
20211008 15:30:02.340 TRACE:: WebSocketClientWrapper connection task started: wss://api.bitfinex.com/ws/2
20211008 15:30:02.341 TRACE:: WebSocketClientWrapper.HandleConnection(wss://api.bitfinex.com/ws/2): Connecting...
20211008 15:30:07.967 TRACE:: WebSocketClientWrapper.OnOpen(): Connection opened (IsOpen:True, State:Open): wss://api.bitfinex.com/ws/2
20211008 15:30:07.967 TRACE:: BaseWebsocketsBrokerage(): WebSocket.Open. Subscribing
20211008 15:30:08.023 TRACE:: WebSocketClientWrapper connection task ended: wss://api.bitfinex.com/ws/2
20211008 15:30:08.024 TRACE:: WebSocketClientWrapper.OnClose(): Connection closed (IsOpen:False, State:CloseSent): wss://api.bitfinex.com/ws/2
20211008 15:30:08.049 ERROR:: BitfinexDownloaderProgram.BitfinexDownloader():  System.ArgumentException: Unknown brokerage symbol: t1INCHUSD
   at QuantConnect.Brokerages.SymbolPropertiesDatabaseSymbolMapper.GetLeanSymbol(String brokerageSymbol, SecurityType securityType, String market, DateTime expirationDate, Decimal strike, OptionRight optionRight) in Lean/Brokerages/SymbolPropertiesDatabaseSymbolMapper.cs:line 120
   at QuantConnect.ToolBox.BitfinexDownloader.BitfinexDataDownloader.GetSymbol(String ticker) in Lean/ToolBox/BitfinexDownloader/BitfinexDataDownloader.cs:line 92
   at QuantConnect.ToolBox.BitfinexDownloader.BitfinexDownloaderProgram.BitfinexDownloader(IList`1 tickers, String resolution, DateTime fromDate, DateTime toDate) in Lean/ToolBox/BitfinexDownloader/BitfinexDownloaderProgram.cs:line 54

Hey @antoinedray!
Sorry for the delay with this one, moving forward --tickers will accept Lean tickers, for brokerage symbol t1INCH:USD should directly pass in 1INCHUSD

Thank you so much @Martin-Molinero
Amazing work 🔥


UTC parsing for Time fields

As it currently operates, rails admin parses time fields (time, timestamp, datetime, date) before submitting as part of the normalize method defined in the Datetime field type. This works for timestamp, datetime, and date, but not for time, since ActiveRecord reads and writes time columns in UTC.
For apps with a time zone configured, rails_admin currently displays times in UTC (the rails default), the user enters a time in UTC, rails admin parses this using the app's time zone, then it is saved it to the database, where rails converts to UTC, offsetting the time by the time zone's offset from UTC.
ie.. for an app in eastern time: I create an object and set the time to '13:37' in the time field, i click 'save and edit' then it says '18:37', click again, it says '23:37', and so on.
I added a test to verify this. Without the fix it fails, and with the fix it passes. I also gave a brief description of the separate normalize and parse_date_string methods for documentation purposes.
This is my first contribution to open source projects, so let me know if you need any additional information or help.
Merry Christmas!

This sounds awesome. Thanks.


Can preprocessed T1w MRI images in nii or nii.gz formats as inputs of FastSurfer?

Can Gradwarp, B1 correction, N3, scaled T1w MRI images in nii or nii.gz formats as inputs of FastSurfer?
Or it must be the original image without any preprocessing step, as indicted in the data requirement "--t1: T1 full head input (not bias corrected, global path). "?
Looking forward to reply. Thanks a lot.
Xin

Follow the same question, can we use the ADNI preprocessed T1w MRI images in nii format as inputs of FastSurfer?

Hi, it should work well with adni. Also the other images should work, but you need to check quality.

Thanks for your reply and information.


internal: Deduplicate ast expression walking logic

Deduplicates the duplication introduced in #9375 and #9396 while also fixing a few bugs in both the assist and related highlighting.

bors r+


Fix overuse of memory in some system with fork

Can you explain what is happening here?  Why is fork causing a memory explosion?

Current coverage is 86.63% (diff: 60.00%)

No coverage report found for master at 0c88cce.

Powered by Codecov. Last update 0c88cce...5e784e2

@seibert , I wonder if this is a problem with fork+cow when memory is limited.  Would swapping force the copying?


rootMode upward not working correctly

Describe the bug
I'm trying to migrate to swc in a monorepo that uses lerna and yarn workspaces, as there are many nested packages in various level of subfolders, for the setup to work we need to be able to get configs from the root of the monorepo. The way this is achieved with babel (both for babelrc and other settings like browserlistrc) is to pass the --root-mode upward option when calling babel from a nested project folder.
Trying to do the same with swc resulted on 3 main issues:

--root-mode is not recognized as an option in the swc cli. The only way I found to pass the option is -C rootMode=upward, this is a minor issue, but is hard to figure out from the documentation and --root-mode should ideally work in order to be compatible with babel API
Even when the option is passed, .swcrc files in parent folders are ignored. It seems that only the on in the current folder works, this makes the option useless and makes it impossible to use swc in a monorepo without duplicating the swcrc everywhere or rely on a known number of ../../ to use.
using a js file swc.config.js as mentioned here: https://github.com/swc-project/swc/blob/master/node-swc/src/types.ts#L67 does not seem to work. That makes it harder to have dynamic config (e.g. using a different preset env for cjs and esm).

Expected behavior

the --root-mode option should work on the cli
when --root-mode is set to upward swc should read the swcrc as well as browserlist config (from rc file or package json) from the first parent package that defines them
config can be provided via a js file swc.config.js to enable dynamic config, or alternative should be provided and documented (e.g. different keyed env fields in the swcrc?)

Version
The version of @swc/core: latest (1.2.60)
Additional context
See: https://github.com/swc-project/swc/discussions/178

It appears to only be checking for .swcrc files:
https://github.com/swc-project/swc/blob/6dc6d8a8474f17a1064a9da2d7744bf518f72660/src/lib.rs#L406-L427

I have also a similar issue with monorepos, can someone help to fix it?

Any progress or clarification on usage for this? Running into this use case with monorepos pretty heavily.


feature request: re-add iFrame support..

Hi Palourde,
I was just reimplementing embedded graphs (this time with grafana) when I noticed uchiwa-web no-longer supports iframes. Here was my original PR that got merged: https://github.com/sensu/uchiwa/commit/6cde2ec79c133afd3be1e760b3500f882fcaa7ee
Is there any reason it was removed?
I would also be grateful for ideas on allowing an ID or class to be set for each iframe. As mentioned in the PR I thought simply changing the syntax for the field to be something like: "iframe:[id]:[url]" might work. It would be nice if Uchiwa could be configured, or could look for a local css file, too. What do you think?
Cheers,

@roobert My bad! I'll look into this ASAP.

@palourde: any comment on adding an id or class for custom styling..?

@roobert You now have a span with iframe class that contains the actual iframe.


s7-Out, send a Boolean command

What are the steps to reproduce?
What happens?
What do you expect to happen?
Please tell us about your environment:

[x] Node-RED version:
[ ] node.js version:
[ ] npm version:
[ ] Platform/OS:
[ ] Browser:

I assume we can close this issue? Or is there an issue report to come?

Hello,
I'm trying to send the value true or false to my PLC, using the node S7, but it doesn't work when I put the adress :  DB3.X42.0 or even DB3.BOOL42.0.

Hi, thanks for raising an issue.
If you check out our contribution guidelines or read the issue template you were shown, you'll see we prefer to handle this sort of thing on the mailing list, slack team or you could ask a question on Stack Overflow and tag it node-red. That way the whole Node-RED user community can help, rather than rely on the core development team, who don't actually know anything about s7 PLCs.
Thanks!

Ok Thank you.


Missing space in login notification in email

There is a missing space in the timestamp in the login notification email (notify_new_login.html):

There should be a space between the digits and "PM"/"AM".

Can you please tell me where this code is actually located (file name).

@richardshaju
templates/zerver/emails/notify_new_login.html
line 22 :)

@zulipbot claim

@zulipbot claim


Simple overrides unmarshalling

Defining a struct for generic overrides and unmarshalling via json is much simplier than using unstructured helpers.

@shashidharatd Ready for review.

seems we introduced some issue in tests. ci is continuously failing. @marun can you ptal. Thanks!

@shashidharatd When I rebased I managed to retain the failed attempt to optimize federated namespace removal.  With that removed, CI should pass once again.

/lgtm
Thanks @marun


Search bar keybinding improvements

Cmd-G should work when focus is within search bar
Cmd-G should work after switching from one file to another without having to first bring focus to the search bar.
Cmd-F for search selection really should be changed to the default (at least for OSX), which is Cmd-E.  The problem is that you wipe out a search term unintentionally, when all you really wanted to do was open the search bar and see what's in there.

We can re-open this if anyone is willing to submit a PR.


Allow lowercase type on config entries

Addresses #201

How are your changes already in the main branch?

I have no idea 😟

🤞


Workspace not always saved

Hi, I noticed that my workspace is not saved when lighttable is closed through the "File -> Close window" menu entry.

+1. I use Linux (Kubuntu 14.04 64bit) and LT 0.7.2 (bin 0.8.4). When I closing LT using 'Close window' menu, workspace does not restoring at start. When I closing it using window title button, all works fine.

I use Arch Linux.
I'm not sure if my problem is the same, related, completely different, or if I'm just an idiot; but my workspace and/or files are just never recalled. Regardless of the method used to close Light Table, I need to "open recent workspace" and reopen each file every time.
Also, not sure if this plugin is supposed to help with that, but Light Table doesn't remember my window size settings, it seems to open at whatever it's default size is, regardless of if I resized it or maximized or what. It's an extremely minor inconvenience, but I thought I'd mention it.
Am I just being obtuse? Is there something to do beyond just installing the plugin? I tried looking for options or settings, and couldn't find anything, whether in the light Table UI, or in the plugin description.

Hey Xananax:
This plugin is now considered legacy. You may want to check out https://github.com/JuliaIDE/Reminisce which is still actively maintained and has a superset of these features.
Sorry for the trouble!


Distinguish unit tests vs integration tests

Creating tiers of test targets could reduce typical test-driven-development build cycle times.

This is large done by moving the longer stuff to the notebooks where are run in the rail smoke tests.


Change import paths to relative

Using absolute import paths causes some problems to verify the contracts on Etherscan:
https://book.getfoundry.sh/forge/deploying#verifying-contracts-with-ambiguous-import-paths
Couldn't verify the Jokerace eligibility module... changing to relative paths fixed that

Would be nice if it worked to follow the foundry convention, but if that's getting in the way of smooth contract verification, then this change looks good to me.


Fixes Interface generator in case the response uses a ref in yaml spec.

Thank you for your contribution @Roflincopter

I will publish a release with this fix today


Can I carve the volume?

Can I carve the 3d volume(volume rendering reconstructed ) use a brush shpere.
After pick the position, I tend to hide or delete the diferent local points of the 3d volume one by one using a virtual shpere.

You cannot "carve" a Volume object.

ok, thanks.
If I fill a local area with the air (HU:'-3000') by a virtual sphere?  And then the rendering will hide it just like carving effect.
Thank you.

sorry, I've no idea of what that means..


[mealie] Fix loading environment variables for backend

Description of the change
Fix loading of environment variables for API component.
Benefits

Any env variables specified by user will be loaded.
Possible drawbacks

None.
Applicable issues

N/A

Additional information

Checklist

[x] Title of the PR starts with chart name (e.g. [home-assistant])
[x] Chart version bumped in Chart.yaml according to semver.
[x] Chart artifacthub.io/changes changelog annotation has been updated in Chart.yaml. See Artifact Hub documentation for more info.
[x] Variables have been documented in the values.yaml file.

Seems like there was a temporary failure fetching the bitnami chart. Can a maintainer kick off another CI run please?

Retriggered the CI


[Bug]: Crane lint checks fail

Is there an existing issue for this?

[X] I have searched the existing issues

Is there a StackOverflow question about this issue?

[X] I have searched StackOverflow

Is this an issue related to one of the samples?

[X] Yes, this is a specific issue related to this samples repo.

Sample app
Crane
What happened?
When running ./scripts/gradlew_recursive.sh lintDebug, lint had an error analyzing the Crane sample. The error isn't especially clear, but it seems like a bug we need to file (as in a bug with a tool or library rather than our samples). Here's the error I saw:

Crane/app/src/androidTest/java/androidx/compose/samples/crane/details/CityMapViewTests.kt: Error: Unexpected failure during lint analysis of CityMapViewTests.kt (this is a bug in lint or one of the libraries it depends on)
Message: 'java.util.List org.jetbrains.uast.UField.getAnnotations()'
The crash seems to involve the detector dagger.lint.DaggerKotlinIssueDetector.
You can try disabling it with something like this:
    android {
        lintOptions {
            disable "JvmStaticProvidesInObjectDetector", "FieldSiteTargetOnQualifierAnnotation", "ModuleCompanionObjects", "ModuleCompanionObjectsNotInModuleParent"
        }
    }

Relevant logcat output
No response
Code of Conduct

[X] I agree to follow this project's Code of Conduct

Logged https://issuetracker.google.com/232345521

This looks like https://github.com/google/dagger/issues/3201?
Should be fixed by https://github.com/google/dagger/commit/33ba899f96083b046a987a1ad0821db8cb36d744 and updating Dagger to 2.41 or higher (latest stable is 2.42)
It looks like Crane is currently on 2.39.


feat(JATSParser): detect package import statements

Look for .xml files with <!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) ... elements and detect any package import statements (e.g. Python import, R library, or Node.js require) in any elements matching:

code[specific-use=cell] > named-content > alternatives > code
fig[fig-type=repro-fig] > alternatives > code

Hah, literally 20 minutes after writing this down discovered this is very similar to what @nuest is doing in https://github.com/jupyter/repo2docker/pull/457/files#diff-6e857ca58d9ac7b40e175db43c40c5d0R287 to detect which Stencila execution contexts to install in repo2docker (although he how out that you only need to look for code specific-use="source")


Improved Error Messages

This is far from complete, but I'm opening now so that other people can contribute if they like.
I'd like to get this merged in the 0.20 or 0.21 cycles.
Instead of looking at mandatory mods and walking down the chain to find errors, this PR looks at errors and walks up the chain to determine sources. This lets us collect data and display it in a clearer and denser manner.

Here's a before-and-after comparison of putting QSL for 1.18.2 into the mods folder (when you've got minecraft 1.20 pre 1).
0.19.0-beta.13:

This PR:

Compared to the previous error messages I think this is worse in some ways, but better in others:
It's better because:

It all fits in a single screen! Previously there were 54 error messages, but now there's only 4.
It gets rid of the "transitively" stuff and just shows the mod that depends on something which is missing - which makes it much easier to debug at a glance.

It's worse because:

3 of the 4 errors are misleading - they are about mods being "incompatible versions" despite the actual error being minecraft.
You removed the icons, and I liked those :p

Overall I'm not sure the approach of "finding errors" makes sense - the whole "graph" of rules collectively describe a single error, so it doesn't make sense to ignore some parts of it in favor of others.


MIxS Editing workflow and policy

A first draft of the specific steps for making changes to MIxS after release 6.2 is in the following comment.
This workflow It will be a markdown page in the MIxS repo that will link from the main MIxS readme and GSC website. It should be somewhere in the MIxS autogenerated documentation as well.
The workflow will need to be approved by the CIG.
NOTE: Move this issue into the main MIxS repo - DONE

Static documentation should live under src/docs as MD files.

Relates to https://github.com/GenomicsStandardsConsortium/mixs/issues/607
I've started a file, Ramona if you can let me know the additional details you want I'll get them in the the file I started and push it up

@mslarae13 Where can I see the content you have been working on and how can I contribute?

See https://github.com/GenomicsStandardsConsortium/mixs/blob/606-mixs-editing-workflow-and-policy/src/docs/contribution-policy.md
@ramonawalls feel free to check out my branch, make some edits and put in the PR :)


Added http stdlib module

Signed-off-by: Karanjot Singh<EMAIL_ADDRESS>Pull request
Description
This adds http stdlib module which makes dealing with http in tremor much easier.

Related

RFC
Related Issues: fixes #2183
Related docs PR

Checklist

[ ] The RFC, if required, has been submitted and approved
[ ] Any user-facing impact of the changes is reflected in docs.tremor.rs
[ ] The code is tested
[ ] Use of unsafe code is reasoned about in a comment
[ ] Update CHANGELOG.md appropriately, recording any changes, bug fixes, or other observable changes in behavior
[ ] The performance impact of the change is measured (see below)

Performance

Hi @Licenser, Could you check now if it's properly implemented?

You are awesome :) thank you mate!

Thanks @Licenser! I've heard a lot about tremor community particularly about you that the community is awesome and contributing to tremor has been really a enjoyable experience to me :)
Looking forward to contribute to some more issues here.

@Licenser i am not sure why the tests-linux is failing here. Could you help me out here?

Thank you so much for the kind words <3 we really appreciate it :) . the test failed for a timeout, not your fault I'll just restart it.


Fix running multiple scripts on Windows

There's basically no other way besides making a standalone script or writing JS code for it.

:+1: It's not a great way, but I'd much rather this than a custom script.

This is gross :(
I didn't think we were ensuring compatibility with cmd, but if this is really a requirement, then :+1:.

but I'd much rather this than a custom script.

Yes!

Well :+1: with a minor comment inline actually.


Handle cancel of authorization flow in MvcSample

Show an error page when we cancel the authorization flow (eg: cancel
Facebook consent)

excellent!


Bark Voice Clone section is not working

Hi everyone, I have encountered a problem in the section of Bark Voice Clone. I have used this program via google colab and it seems I can not train a voice. When I clicked a generate voice button, I saw errors in the right hand side.
Any ideas about this error ?

I tried it just now, and it seemed to work.
Here's my output from the final cell:
Env file not found. Creating default env.
Config file not found. Creating default config.
2023-08-17 13:43:00.541047: W tensorflow/compiler/tf2tensorrt/utils/py_utils.cc:38] TF-TRT Warning: Could not find TensorRT
Loading extensions:
Loaded extension: callback_save_generation_ffmpeg
Loaded extension: callback_save_generation_musicgen_ffmpeg
Loaded extension: empty_extension
Loaded 2 callback_save_generation extensions.
Loaded 1 callback_save_generation_musicgen extensions.
Failed to load musicgen demo
Detected that PyTorch and torchvision were compiled with different CUDA versions. PyTorch has CUDA Version=11.7 and torchvision has CUDA Version=11.8. Please reinstall the torchvision that matches your PyTorch install.
/content/tts-generation-webui/src/rvc_tab/rvc_tab.py
Gradio share mode enabled
Starting Gradio server...
Gradio interface options:
  inline:               False
  inbrowser:            True
  share:                True
  debug:                False
  enable_queue:         True
  max_threads:          40
  auth:                 None
  auth_message:         None
  prevent_thread_lock:  False
  show_error:           False
  server_name:          <IP_ADDRESS>
  server_port:          None
  show_tips:            False
  height:               500
  width:                100%
  favicon_path:         None
  ssl_keyfile:          None
  ssl_certfile:         None
  ssl_keyfile_password: None
  ssl_verify:           True
  quiet:                True
  show_api:             True
  file_directories:     None
  _frontend:            True
Running on local URL:  http://<IP_ADDRESS>:7860/
Running on public URL: https://977b8e304587923d2c.gradio.live/
/usr/local/lib/python3.10/dist-packages/gradio/processing_utils.py:176: UserWarning: Trying to convert audio automatically from int32 to 16-bit int format.
  warnings.warn(warning.format(data.dtype))
Downloading HuBERT base model
Downloaded HuBERT
Downloading HuBERT custom tokenizer
Downloading (…)rt_base_ls960_14.pth: 100% 104M/104M [00:00<00:00, 200MB/s]
Downloaded tokenizer
Downloading: "https://dl.fbaipublicfiles.com/encodec/v0/encodec_24khz-d7cc33bc.th" to /root/.cache/torch/hub/checkpoints/encodec_24khz-d7cc33bc.th
100% 88.9M/88.9M [00:01<00:00, 80.7MB/s]
/usr/local/lib/python3.10/dist-packages/gradio/processing_utils.py:171: UserWarning: Trying to convert audio automatically from float32 to 16-bit int format.
  warnings.warn(warning.format(data.dtype))

Could you post some logs from the google colab, please? Or perhaps save and send the colab?

Thanks, now I re-checked and it worked. However, this model is inconsistent with my audio. I wonder are there any updates for the Turkish language? I am trying to find a tokenizer for Turkish language however in the cloning version I could not find a proper instructors for it. Do you have any ideas

I tried it just now, and it seemed to work.
Here's my output from the final cell:
Env file not found. Creating default env.
Config file not found. Creating default config.
2023-08-17 13:43:00.541047: W tensorflow/compiler/tf2tensorrt/utils/py_utils.cc:38] TF-TRT Warning: Could not find TensorRT
Loading extensions:
Loaded extension: callback_save_generation_ffmpeg
Loaded extension: callback_save_generation_musicgen_ffmpeg
Loaded extension: empty_extension
Loaded 2 callback_save_generation extensions.
Loaded 1 callback_save_generation_musicgen extensions.
Failed to load musicgen demo
Detected that PyTorch and torchvision were compiled with different CUDA versions. PyTorch has CUDA Version=11.7 and torchvision has CUDA Version=11.8. Please reinstall the torchvision that matches your PyTorch install.
/content/tts-generation-webui/src/rvc_tab/rvc_tab.py
Gradio share mode enabled
Starting Gradio server...
Gradio interface options:
  inline:               False
  inbrowser:            True
  share:                True
  debug:                False
  enable_queue:         True
  max_threads:          40
  auth:                 None
  auth_message:         None
  prevent_thread_lock:  False
  show_error:           False
  server_name:          <IP_ADDRESS>
  server_port:          None
  show_tips:            False
  height:               500
  width:                100%
  favicon_path:         None
  ssl_keyfile:          None
  ssl_certfile:         None
  ssl_keyfile_password: None
  ssl_verify:           True
  quiet:                True
  show_api:             True
  file_directories:     None
  _frontend:            True
Running on local URL:  http://<IP_ADDRESS>:7860/
Running on public URL: https://977b8e304587923d2c.gradio.live/
/usr/local/lib/python3.10/dist-packages/gradio/processing_utils.py:176: UserWarning: Trying to convert audio automatically from int32 to 16-bit int format.
  warnings.warn(warning.format(data.dtype))
Downloading HuBERT base model
Downloaded HuBERT
Downloading HuBERT custom tokenizer
Downloading (…)rt_base_ls960_14.pth: 100% 104M/104M [00:00<00:00, 200MB/s]
Downloaded tokenizer
Downloading: "https://dl.fbaipublicfiles.com/encodec/v0/encodec_24khz-d7cc33bc.th" to /root/.cache/torch/hub/checkpoints/encodec_24khz-d7cc33bc.th
100% 88.9M/88.9M [00:01<00:00, 80.7MB/s]
/usr/local/lib/python3.10/dist-packages/gradio/processing_utils.py:171: UserWarning: Trying to convert audio automatically from float32 to 16-bit int format.
  warnings.warn(warning.format(data.dtype))

Could you post some logs from the google colab, please? Or perhaps save and send the colab?

There might not be a version for Turkish. The original one is for English, and some other languages have been done as well so far.
These are the officially published ones, but there is no Turkish there yet: https://github.com/gitmylo/Voice-cloning-quantizers/blob/main/models.json


Evaluate dragonflydb as redis replacement

If dragonflydb's cluster mode works more reliable than what redis offers it might be a good alternative to replace all the single-pod redis instances with a shared multi-pod cluster.
https://github.com/dragonflydb/dragonfly

Looks good so far, Gitea is doing fine with it. Will migrate the remaining apps using redis over to it soon.


perf(block): use Block::bordered

Block::bordered() is shorter than Block::new().borders(Borders::ALL), requires one less import (Borders) and in case Block::default() was used before can even be const.
This mostly changes examples, documentation, and tests.
As I used a lot of regular expressions I could have overlooked something when checking all the changes myself. Another set of eyes might find something I missed.

There seems to be some usages left in README.md, chart example and other places. I can fix it if you want 🐻

README, good call! I only checked *.rs files to prevent CHANGELOG.md mishaps :innocent:
And… Borders::all()… havnt thought of that while searching the repo.
I think I got them all now?

Thanks for keeping the block tests in. LGTM


Blank error in app when streaming/downloading

The Issue
App side issue to go along with https://github.com/lbryio/lbry/issues/885
Error message on app side is blank for the scenario given in the above issue.  This happens when you go to a claim and the sdblob initially fails but then downloads when you click download/stream (that's when the blank error pops up).   See below for logs:
Lbrynet.log
2017-08-30 21:12:09,553 INFO     lbrynet.daemon.Daemon:2635: Need sd blob
2017-08-30 21:12:09,553 INFO     lbrynet.core.client.ConnectionManager:38: Connection Manager 4c9ce770083543c81312803403814a5cad7d885a41080917ca951a1ec4770e599df3de04c92b401fd6ece34d0f78290c initialized
2017-08-30 21:12:11,555 WARNING  lbrynet.daemon.Daemon:2644: Failed to download 4c9ce770083543c81312803403814a5cad7d885a41080917ca951a1ec4770e599df3de04c92b401fd6ece34d0f78290c within timeout
2017-08-30 21:12:14,365 INFO     lbrynet.core.server.BlobRequestHandler:151: Sending 211a97a9a23a0d05 to <IP_ADDRESS>:49402
2017-08-30 21:12:19,680 INFO     lbrynet.daemon.Downloader:91: Download lbry://ld-ESe4TsYVE0g status changed to initializing
2017-08-30 21:12:19,683 INFO     lbrynet.daemon.Downloader:91: Download lbry://ld-ESe4TsYVE0g status changed to downloading_metadata
2017-08-30 21:12:19,683 INFO     lbrynet.core.client.ConnectionManager:38: Connection Manager 4c9ce770083543c81312803403814a5cad7d885a41080917ca951a1ec4770e599df3de04c92b401fd6ece34d0f78290c initialized
2017-08-30 21:12:20,601 INFO     lbrynet.core.client.BlobRequester:395: Offered rate 0.000000/mb accepted by <IP_ADDRESS>
2017-08-30 21:12:20,740 INFO     lbrynet.core.client.BlobRequester:545: Blob 4c9ce770083543c8 has been successfully downloaded from <IP_ADDRESS>:3333
2017-08-30 21:12:20,742 INFO     lbrynet.core.client.ClientProtocol:144: Closing the connection to <IP_ADDRESS>:3333 due to having no further requests to send
2017-08-30 21:12:21,759 INFO     lbrynet.lbry_file.EncryptedFileMetadataManager:246: Saved sd blob hash 4c9ce770083543c81312803403814a5cad7d885a41080917ca951a1ec4770e599df3de04c92b401fd6ece34d0f78290c to stream hash 05fb31c9bb9ebe05fa5261c2c2b06998b500e939aee90eff24c6e0e6a123f398594e51ff9584d2dd4a741d3273b44b86
2017-08-30 21:12:21,782 INFO     lbrynet.daemon.Downloader:180: Downloading lbry://ld-ESe4TsYVE0g (4c9ce7) --> D:\LBRY Downloads Main PC\ESe4TsYVE0g.mp4

Console:
TypeError: Cannot read property 'transaction_id' of undefined
    at file:///C:/Program%20Files%20(x86)/LBRY/resources/app/dist/js/bundle.js:8641:15
    at file:///C:/Program%20Files%20(x86)/LBRY/resources/app/dist/js/bundle.js:121416:18
    at dispatch (file:///C:/Program%20Files%20(x86)/LBRY/resources/app/dist/js/bundle.js:121471:18)
    at file:///C:/Program%20Files%20(x86)/LBRY/resources/app/dist/js/bundle.js:8698:9
    at Array.forEach (native)
    at file:///C:/Program%20Files%20(x86)/LBRY/resources/app/dist/js/bundle.js:8697:89
    at file:///C:/Program%20Files%20(x86)/LBRY/resources/app/dist/js/bundle.js:121416:18
    at dispatch (file:///C:/Program%20Files%20(x86)/LBRY/resources/app/dist/js/bundle.js:121471:18)
    at file:///C:/Program%20Files%20(x86)/LBRY/resources/app/dist/js/bundle.js:3397:5
    at file:///C:/Program%20Files%20(x86)/LBRY/resources/app/dist/js/bundle.js:121416:18
    at dispatch (file:///C:/Program%20Files%20(x86)/LBRY/resources/app/dist/js/bundle.js:121471:18)

System Configuration

LBRY Daemon version: 0.15.1
LBRY App version: 0.15
LBRY Installation ID:
Operating system: Windows

Anything Else

Screenshots

i keep seeing this on the blank error
2017-09-01 20:57:01,324 INFO     lbrynet.core.client.ConnectionManager:38: Connection Manager 6xgjEfRjOh0.mp4 initialized
2017-09-01 20:57:01,406 INFO     lbrynet.file_manager.EncryptedFileDownloader:32: lbry://rt-6xgjEfRjOh0 (cf1037) is unknown

About 50% certain I fixed this, please re-open if this happens past 0.15.1.
Note that this fix (and ticket) is just that the error pop-up is blank.


Drop support for Python 3.6

Python 3.6 is now EOL'ed and many critical dependencies for this project have dropped support for it, preventing us from using them for Python 3.6.

Done via #38


Remove leader election for controller

As we're running a single replica for the controller manager we probably don't need leader election. If we configure more replicas in the future maybe we could use an ENV var.

recheck

Failed to watch *unstructured.Unstructured: the server has asked for the client to provide credentials

recheck

recheck
watch of *unstructured.Unstructured ended with: an error on the server (\"unable to decode an event from the watch stream: http2: client connection lost\") has prevented the request from succeeding

recheck
Internal error occurred: failed calling webhook \"mopenstackdataplane.kb.io\": failed to call webhook: Post \"https://dataplane-operator-controller-manager-service.openstack-operators.svc:443/mutate-dataplane-openstack-org-v1beta1-openstackdataplane?timeout=10s\": no endpoints available for service \"dataplane-operator-controller-manager-service\"

recheck


test: changed for rerun

Description
changed for rerun for docker
Fixes # (issue)
Type of change

Bug fix (non-breaking change which fixes an issue)
Breaking change (fix or feature that would cause existing functionality to not work as expected)

How Has This Been Tested?
code review
Checklist:

[X] My code follows the style guidelines of this project
[X] I have performed a self-review of my own code
[X] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[X] New and existing unit tests pass locally with my changes

/ok-to-test sha=83190956cd6b444fc64f2e1d8894d0660486b4be

/ok-to-test sha=65add36adc5db2141462f6bc5bb52f4bc6781493


Error building project

[public class QRCodeReaderPlugin implements MethodCallHandler, ActivityResultListener, PluginRegistry.RequestPermissionResultListener {
                                                                                ^
  symbol:   class RequestPermissionResultListener
  location: interface PluginRegistry
C:\..\AppData\Roaming\Pub\Cache\hosted\pub.dartlang.org\qrcode_reader-0.3.2\android\src\main\java\com\matheusvillela\flutter\plugins\qrcodereader\QRCodeReaderPlugin.java:63: error: cannot find symbol
            registrar.addRequestPermissionResultListener(instance);
                     ^
  symbol:   method addRequestPermissionResultListener(QRCodeReaderPlugin)
  location: variable registrar of type Registrar](url)

error: method does not override or implement a method from a supertype
    @Override
    ^

https://docs.flutter.io/javadoc/io/flutter/plugin/common/PluginRegistry.Registrar.html
addRequestPermissionResultListener(PluginRegistry.RequestPermissionResultListener listener)
Deprecated.  on 2018-01-02 because of misspelling
Not sure why they changed names and removed it in 4 weeks. The whole class is misspelled, "registrar" is "register" in portuguese.

https://github.com/villela/flutter_qrcode_reader/commit/7e003ebb45d30bff753198f172474165ccb844fe

Project build failed error not resolved

Please fix error C:\Users\Sanat\AppData\Roaming\Pub\Cache\hosted\pub.dartlang.org\qrcode_reader-0.3.2\android\src\main\java\com\matheusvillela\flutter\plugins\qrcodereader\QRCodeReaderPlugin.java:42: error: cannot find symbol
public class QRCodeReaderPlugin implements MethodCallHandler, ActivityResultListener, PluginRegistry.RequestPermissionResultListener {
^
symbol:   class RequestPermissionResultListener
location: interface PluginRegistry
C:\Users\Sanat\AppData\Roaming\Pub\Cache\hosted\pub.dartlang.org\qrcode_reader-0.3.2\android\src\main\java\com\matheusvillela\flutter\plugins\qrcodereader\QRCodeReaderPlugin.java:63: error: cannot find symbol
registrar.addRequestPermissionResultListener(instance);
^
symbol:   method addRequestPermissionResultListener(QRCodeReaderPlugin)
location: variable registrar of type Registrar
C:\Users\Sanat\AppData\Roaming\Pub\Cache\hosted\pub.dartlang.org\qrcode_reader-0.3.2\android\src\main\java\com\matheusvillela\flutter\plugins\qrcodereader\QRCodeReaderPlugin.java:155: error: method does not override or implement a method from a supertype
@Override
^
Note: C:\Users\Sanat\AppData\Roaming\Pub\Cache\hosted\pub.dartlang.org\qrcode_reader-0.3.2\android\src\main\java\com\matheusvillela\flutter\plugins\qrcodereader\QRCodeReaderPlugin.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
3 errors
FAILURE: Build failed with an exception.

What went wrong:
Execution failed for task ':qrcode_reader:compileDebugJavaWithJavac'.

Compilation failed; see the compiler error output for details.

Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

Get more help at https://help.gradle.org

BUILD FAILED in 2m 55s
Finished with error: Gradle build failed: 1

Yes right, error not resolved.

Ohhh sorry about that, it wasn't the only problem them.
I've tried to update my flutter installation, reinstalling etc but even if the flutter doctor says it's all ok I can't build the project.
I'll be closing this project, Flutter just doesn't work.

Oh please don't. I have submitted a pull request (https://github.com/bcko/flutter_qrcode_reader/pull/12) which should fix this issue. Thanks for the work.

#12 merged


Revert environment regexp in opts

Remove the environment regexp introduced in #13694 as it makes some application not working anymore.
As said in #16585

Environment variable names used by the utilities in the Shell and Utilities volume of IEEE Std 1003.1-2001 consist solely of uppercase letters, digits, and the '_' (underscore) from the characters defined in Portable Character Set and do not begin with a digit. Other characters may be permitted by an implementation; applications shall tolerate the presence of such names. Uppercase and lowercase letters shall retain their unique identities and shall not be folded together. The name space of environment variable names containing lowercase letters is reserved for applications.

Even if I was liking this, as @tianon said, docker should be tolerant on the environment passed as is — separation of concern, it's up to the application to handle this or not :sweat_smile:.
The only question I have on that one is the fact that ParseEnvFile behave differently from ValidateEnv as it checks from white spaces where the other don't. What should we do there ?
Fixes #16585
Signed-off-by: Vincent Demeester<EMAIL_ADDRESS>

/ping @calavera @duglin

@vdemeester can we add a couple new regression tests to opts/envfile_test.go with special characters, like . and _ to make sure this doesn't break again?

@calavera yes, will do :wink:.

@calavera done :wink:

LGTM

LGTM


validation failed when adding co-signer

If i add a cosigner account to an address, its giving me the error "validation failed because redundant cosigners are present"
The message appears after clicking confirm on the aggregate bonded transaction at the top of the list.
im using ledger.

Thanks for the feedback! Could you provide some specific steps that reproduce the error?

Thanks for the feedback! Could you provide some specific steps that reproduce the error?

basically im trying to add a multisig cosigner to a 1 of 1 account, as i need to add a new address so i can remove the old one.
The transaction will appear after adding the co-signer as an aggregate bonded transaction, in this case the one in the top of the screenshot.
I click on the transaction, and then click confirm, then sign on the ledger and the error appears like in the screenshot.
I can send you a video in private if you like.

Hi @kiwiminer are you still able to reproduce this on latest-version? if yes, would you mind sharing the video for the exact steps reproducing that?

Hi @kiwiminer are you still able to reproduce this on latest-version? if yes, would you mind sharing the video for the exact steps reproducing that?

Hi @bassemmagdy I think the issue was at allnodes end, apparently they were required to have signed it at their end rather than me, but they were not being co-operative, so I ended up starting another new node on there and it went away with no issues.

This looks like a duplicate of https://github.com/nemgrouplimited/symbol-desktop-wallet/issues/1398.
I did not hear about other such cases after Ledger integration fix.


SERIOUS bibliography links are broken

The three SERIOUS project links in bibliography.adoc are broken. http://www.hitech-projects.com returns 404.

thx for this notification - will investigate later today!


Compute percentiles for daily values and their colors

Computes which color the site should be for each day based on its associated stats and the daily value for discharge. The general format for the output file, 2_process/out/dv_stat_colors.rds is:
site_no   dateTime dv_val       per p50_va   color
1 50011200 2018-09-12   13.9 0.8070975    3.5 #8CC0D9
2 50011200 2018-09-13   14.1 0.7907767    3.3 #96C6DE
3 50011200 2018-09-14   17.8 0.7991803    3.4 #92C5DE
4 50011200 2018-09-15   13.5 0.8066584    3.5 #8DC0D9
5 50011200 2018-09-16   13.3 0.7775168    2.4 #9CC9DF
6 50011200 2018-09-17   13.0 0.7668142    3.6 #A1CBE0

Sometimes when I build, even after I've sat through 1_fetch/out/dv_data.rds.ind run through and download daily discharge for all 8,364 sites, when  dv_data <- readRDS(scipiper::sc_retrieve(dv_data_ind, remake_file = '1_fetch.yml')) runs during 2_process/out/dv_stats.rds.ind, it kicks off that download yet again...I haven't figured out why.
Also, there are still 24 observations that might be duplicated. When the left_join happens in process_dv_stats.R, 24 more rows are added.
Fixes #19

Rats about the conflicts in 2_process/out/site_locations_sp.rds.ind and build/status/Ml9wcm9jZXNzL291dC9zaXRlX2xvY2F0aW9uc19zcC5yZHMuaW5k.yml. As a reminder, the information to keep is the information from the more recent change to Drive, whichever file that was. The date stamp is in the build/status file.

Ok, @aappling-usgs how's this??


Peer-to-peer code review

Done so far 🔒

Highlights ✅

Linters intergration
Figma Template UI Design
Integrated Javascript in the menu for responsiveness

Well Done So far 🟢
great job @Chaseknis

Checked ✅

Linters error ✔
JS HTML CSS conventions ✔
Github Flow ✔

Optional Suggestion 🧷

Create a list to dynamically implement the project cards

STATUS: CHANGES REQUIRED :recycle:
Hi @Chaseknis  ,
Good job so far!
There are some issues that you still need to work on to go to the next project but you are almost there!

Highlights

Linters are passing :+1:
Good use of Github flow :+1:
Good PR summary :+1:

Required Changes ♻
Use descriptive class name so that future programmers will understand your code
Optional suggestions
Every comment with the [OPTIONAL] prefix is not crucial enough to stop the approval of this PR. However, I strongly recommend you to take them into account as they can make your code better.
Cheers and Happy coding!👏👏👏
Feel free to leave any questions or comments in the PR thread if something is not 100% clear.
Please, remember to tag me in your question so I can receive the notification.
Please, do not open a new Pull Request for re-reviews. You should use the same Pull Request submitted for the first review, either valid or invalid unless it is requested otherwise.

As described in the Code reviews limits policy you have a limited number of reviews per project (check the exact number in your Dashboard). If you think that the code review was not fair, you can request a second opinion using this form.


AGIS render materials send & receive

Tested with: https://latest.speckle.systems/projects/126cd4b7bb/models/0a4181c73b@f75f25ce4e

@KatKatKateryna I was about to merge your PR but having errors on tests, I'm preventing to merge it now, leaving it to you to fix.

Tested with https://latest.speckle.systems/projects/126cd4b7bb/models/0a4181c73b , some objects are not colored but I don't see their IDs in the RenderMaterial Objects either:

@oguzhankoral

We've decided to change this pr with Color Proxies instead, the first of which is https://github.com/specklesystems/speckle-sharp-connectors/pull/135 (on send)

The rest of this pr can be closed without merge once Color Proxy receive is added as well


Updated docs

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (6f2d1ec) 23.73% compared to head (fad9065) 23.51%.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff             @@
##             main      #27      +/-   ##
==========================================
- Coverage   23.73%   23.51%   -0.22%
==========================================
  Files          13       13
  Lines         927      927
==========================================
- Hits          220      218       -2
- Misses        707      709       +2

Flag
Coverage Δ

unittests
23.51% <ø> (-0.22%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

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


Delete peer on announce stopped

It's better to delete as iterating over the peers will be much faster

7.3.4


Update redbox to take over entire screen

Not sure what the intended behavior is but currently the redbox displays awkwardly.

My vote goes to this one. z-index should be increased.

+1, was just about to submit this myself.

@davidpfahler Can you take a look at this?

Damn, was just about to make this easy PR! This would be cool!

Thank you @amccloud and all others who asked for this fix. This should be fixed in the latest release. Please ping me here if not. Sorry, I couldn't merge your PR, @amccloud, but we had to move to style attributes.

@davidpfahler No problem. I'm curious, why did you move away from css-modules?

@amccloud It caused some issues: #11


improve rewrite memtable memory limiter rules

Proposed changes
Issue Number: close #xxx

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall


Add Google Benchmark lib

Changelog:

[x] Add gbenchmark lib
[x] Create motivational example

Codecov Report

Merging #625 into develop will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff            @@
##           develop     #625   +/-   ##
========================================
  Coverage    44.67%   44.67%
========================================
  Files          300      300
  Lines        11820    11820
  Branches      6287     6287
========================================
  Hits          5280     5280
  Misses         773      773
  Partials      5767     5767

Continue to review full report at Codecov.

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


Null check on customdomain

https://github.com/patrickdemooij9/SeoToolkit.Umbraco/issues/212

And also thanks for this PR! I've merged it and will probably release it somewhere next week


add support for X, y, and labels of type other than np.ndarray

Currently astartes only includes type hints to indicate that X, y, and labels should be numpy arrays, but it is not enforced and can lead to unexpected behavior. This PR adds a new function, convert_to_numpy_array in astartes.utils which will attempt to convert inputs to the appropriate type. Users are warned during this process so that they may ensure the conversion is correct, and a helpful exception is raised if the conversion is not possible.
I have also added a brief update to the README, and new unit tests for this functionality.
This PR resolves #123

@kspieks thanks for pointing out that use case, added the changes and re-requested review.


Unified user feedback (UUF) triage for November 2024

aspnetdocs & aspnetcore.docs

Associated WorkItem - 340554
https://aka.ms/uuftriageapp

Completed 35 days worth


Cannot generate heatmaps using Gradcam library

import numpy as np
import tensorflow as tf
from tf_explain.core.grad_cam import GradCAM
import matplotlib.pyplot as plt
Initialize Grad-CAM explainer
explainer = GradCAM()
Specify the layer for Grad-CAM in the VGG16 model (vgg16_tr)
conv_layer_name = 'block5_conv2'  # Adjusted to use 'block5_conv2'
Get a batch from the validation generator
X_val, y_val = val_generator.getitem(0)
Process each image in the batch
for i in range(len(X_val)):
# Add batch dimension to match the expected input shape for Grad-CAM
image_to_explain = np.expand_dims(X_val[i], axis=0)  # Shape: (1, 128, 128, 3)
label_to_explain = np.expand_dims(y_val[i], axis=0)  # Shape: (1, num_classes)
true_class = np.argmax(y_val[i])  # Get the true class index from the label
# Ensure the image is passed as a tf.Tensor (not a NumPy array)
image_to_explain = tf.convert_to_tensor(image_to_explain, dtype=tf.float32)

# Generate the Grad-CAM heatmap
heatmap = explainer.explain(
    validation_data=(image_to_explain, label_to_explain),  # Pass the single image and its label
    model=vgg16_tr,
    class_index=true_class,
    layer_name=conv_layer_name
)

# Plot the original image and Grad-CAM heatmap
fig, ax = plt.subplots(1, 2, figsize=(10, 5))

# Original image
ax[0].imshow(X_val[i])
ax[0].set_title(f'Original Image {i+1}')
ax[0].axis('off')

# Grad-CAM heatmap overlay
ax[1].imshow(X_val[i])  # Show the original image first
ax[1].imshow(heatmap, cmap='jet', alpha=0.3)  # Overlay heatmap with transparency
ax[1].set_title(f'Grad-CAM Heatmap {i+1}')
ax[1].axis('off')

plt.tight_layout()
plt.show()

I'm trying to generate heatmaps using inbuilt GradCam function for the celebA dataset. But I get the below error. I have reviewed the size to the input going to the GradCam it is (1, 128,128,3).
error:  When providing inputs as a list/tuple, all values in the list/tuple must be KerasTensors. Received: inputs=[[<KerasTensor shape=(None, 128, 128, 3), dtype=float32, sparse=None, name=keras_tensor>]] including invalid value [<KerasTensor shape=(None, 128, 128, 3), dtype=float32, sparse=None, name=keras_tensor>] of type <class 'list'>
If anyone could help me debug this, it would be much appriciated.

This looks like you're using an old version of Keras 3, from before the time when we supported nested model inputs.

Hi @jeev0306,
Could you please share the version of Keras you're using and a dummy dataset to reproduce this issue?Thanks!

This issue is maybe happening because the image is not converted into a Keras tensor with the correct shape. By doing that it will ensure no additional nesting.


#36 aio config and aio config:get without key should return valid JSON

Description
Assign the own objects of the config store to an empty object and JSON.stringify the that object
Related Issue
#36 aio config and aio config:get without key should return valid JSON
Motivation and Context
Goal is to be able to post-process the configuration object in scripts
How Has This Been Tested?
Using the command line examples in the issue #36
Screenshots (if appropriate):
n/a
Types of changes

[X] Bug fix (non-breaking change which fixes an issue)
[X] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[X] I have signed the Adobe Open Source CLA.
[X] My code follows the code style of this project.
[X] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[X] I have read the CONTRIBUTING document.
[X] I have added tests to cover my changes.
[X] All new and existing tests passed.

Looks like PR #38 pretty much covers this topic. So I am closing this PR.


Gracefully skip github info requests when the token has not been set

Questions
Answers

Description?
This change makes it so that when the access token environment variable has not been set, it will skip github requests and issue a warning (which makes for faster rendering when run locally). I've also moved the footer to a partial of its own and improved the code a little.

Type?
improvement

Sponsor company
PrestaShop SA

Thanks for the review!


refactor keras/engine

Summary
refactor  keras/engine/training.py and keras/engine/training_arrays.py. Make some function easy understand. thanks.
Related Issues
PR Overview

[ ] This PR requires new unit tests [y/n] (make sure tests are included)
[ ] This PR requires to update the documentation [y/n] (make sure the docs are up-to-date)
[x] This PR is backwards compatible [y/n]
[ ] This PR changes the current API [y/n] (all API changes need to be approved by fchollet)

Thanks for the PR.
There is definitely room for improving the readability of internal code in training.py, and renaming variables that have obscure names (like f). However, I think this PR makes some questionable naming choices. I believe we should no merge it.

@fchollet ok, can i send another pr for this?

@knightXun sure. You can rename f to fit_function (resp. val_function), and you can rename ins to inputs.


AAPT2 does not like custom resources...

I have been playing the past few days with this guide from Google. However, after sorting quite a few issues, I ran into this one, and I'm not sure if this might be the correct way to proceed with it.

Currently, I'm working in the gsoc20/build-aab branch. I have created the AabCompiler.java Callable class (thinking for future refactor) where I run specific AAB tasks. It first creates an the build/aab/ folder, preparing the structure for the AAB module.
Following the tutorial, the first step involves compiling the resource files using AAPT2:
aapt2 compile \
project_root/module_root/src/main/res/drawable/Image1.png \
project_root/module_root/src/main/res/drawable/Image2.png \
-o compiled_resources/

So, in https://github.com/barreeeiroo/appinventor-sources/blob/gsoc20/build-aab/appinventor/buildserver/src/com/google/appinventor/buildserver/AabCompiler.java#L192 I do so. The res_compiled/ folder gets created at the build/ level, not in the aab/ one.
The next step is to link all resources and "generate" an APK with all protobuf-encoded files which can be extracted later. So, what I do is https://github.com/barreeeiroo/appinventor-sources/blob/gsoc20/build-aab/appinventor/buildserver/src/com/google/appinventor/buildserver/AabCompiler.java#L212. I don't use the res_compiled/*.flat because the * wildcard is not supported on Windows.
And here comes the problem.
When running ant PlayAppAab (I just added that command to be able to test from command line) in that branch, errors like this start popping out:

error: style attribute 'attr/colorPrimary not found

And I found that it was because I did not have the attrs.xml file. So, I created it and started adding the attributes that were causing the errors: https://github.com/barreeeiroo/appinventor-sources/blob/gsoc20/build-aab/appinventor/buildserver/src/com/google/appinventor/buildserver/Compiler.java#L772
The first issues were quite easy to solve, as they were "attr" type. However, then I got the same issue but for textAllCaps. I made the same (boolean type), but then this error appeared:

Attribute "textAllCaps" already defined with incompatible format.

Then after checking this file I ended up removing the format and worked.
But I was not able to get rid of these errors:
     [java] error: resource style/Theme.AppCompat.Light.Dialog.Alert (aka edu.mit.appinventor.aicompanion3:style/Theme.AppCompat.Light.Dialog.Alert) not found.
     [java] error: resource style/Theme.AppCompat.Light.Dialog.Alert (aka edu.mit.appinventor.aicompanion3:style/Theme.AppCompat.Light.Dialog.Alert) not found.
     [java] error: resource style/Theme.AppCompat.Light.Dialog.Alert (aka edu.mit.appinventor.aicompanion3:style/Theme.AppCompat.Light.Dialog.Alert) not found.
     [java] error: resource style/Theme.AppCompat.Light.Dialog.Alert (aka edu.mit.appinventor.aicompanion3:style/Theme.AppCompat.Light.Dialog.Alert) not found.
     [java] error: resource style/Theme.AppCompat.Light.Dialog (aka edu.mit.appinventor.aicompanion3:style/Theme.AppCompat.Light.Dialog) not found.
     [java] error: resource style/Theme.AppCompat.Light.Dialog (aka edu.mit.appinventor.aicompanion3:style/Theme.AppCompat.Light.Dialog) not found.
     [java] error: resource style/Theme.AppCompat.Light.Dialog (aka edu.mit.appinventor.aicompanion3:style/Theme.AppCompat.Light.Dialog) not found.
     [java] error: resource style/Theme.AppCompat.Light.Dialog (aka edu.mit.appinventor.aicompanion3:style/Theme.AppCompat.Light.Dialog) not found.
     [java] error: resource style/Theme.AppCompat.Light.DarkActionBar (aka edu.mit.appinventor.aicompanion3:style/Theme.AppCompat.Light.DarkActionBar) not found.
     [java] error: resource style/Theme.AppCompat.Light.DarkActionBar (aka edu.mit.appinventor.aicompanion3:style/Theme.AppCompat.Light.DarkActionBar) not found.
     [java] error: resource style/Theme.AppCompat.Light.DarkActionBar (aka edu.mit.appinventor.aicompanion3:style/Theme.AppCompat.Light.DarkActionBar) not found.
     [java] error: resource style/Widget.AppCompat.CompoundButton.Switch (aka edu.mit.appinventor.aicompanion3:style/Widget.AppCompat.CompoundButton.Switch) not found.
     [java] C:\Users\DIEGOB~1\AppData\Local\Temp\1592499516754_0.35972695033492474-0\youngandroidproject\..\build\res\values\styles.xml:10: error: resource drawable/abc_item_background_holo_light (aka edu.mit.appinventor.aicompanion3:drawable/abc_item_background_holo_light) not found.
     [java] error: resource style/TextAppearance.AppCompat (aka edu.mit.appinventor.aicompanion3:style/TextAppearance.AppCompat) not found.
     [java] error: resource style/TextAppearance.AppCompat (aka edu.mit.appinventor.aicompanion3:style/TextAppearance.AppCompat) not found.
     [java] error: resource style/TextAppearance.AppCompat (aka edu.mit.appinventor.aicompanion3:style/TextAppearance.AppCompat) not found.
     [java] error: resource style/TextAppearance.AppCompat (aka edu.mit.appinventor.aicompanion3:style/TextAppearance.AppCompat) not found.
     [java] error: resource style/TextAppearance.AppCompat (aka edu.mit.appinventor.aicompanion3:style/TextAppearance.AppCompat) not found.
     [java] error: failed linking references.

So, I am wondering if following that guide is the correct way to proceed, because they actually build  a ~fake~ APK and then unpack it to extract the protocol-buffered files, so they can place it in the zip module to run bundletool.

@barreeeiroo One thing you may want to test is to build a simple app with Android Studio and run gradle with verbosity turned on. This will let you see what specific steps are needed. In the current compiler, we invoke aapt to produce an apk without the classes since this is needed to create the R.txt file and merges together all of the resources from the various AAR files. The R.txt file is then used to create the R.java file, which is compiled and linked with the compiled scheme code. One hypothesis is that we may need to invoke both aapt and aapt2 to make sure it generates the right set of XML based resources for the rest of the build. Ideally though I would expect aapt2 should be a superset of functionality of aapt.

So after further reading https://developer.android.com/studio/command-line/aapt2, it seems like we would want to invoke aapt2 for each *.xml and *.png in the exploded-aars + the app (plus extensions in the future). Once each of these has been compiled you then pass the resulting *.flat files into aapt2 link, which produces the equivalent of the .ap_ output of aapt (the APK minus the dex files). At that point everything else picks up. It would be interesting to see exactly what gradle does here.


Add extension methods for DateTime

I noticed that we have very poor support for DateTime. We need couple methods which might be handy for people like:

IsLaterThan(Datetime dateTime)
IsEarlierThan(Datetime dateTime)
IsLaterThanNow()
IsEarlierThanNow()

Lol... so... TimeSpan, DateTimeOffset and nullable variants.

IsInRange


Redirecting std::cout causes driver failure

Why when trying to redirect messages from driver console to a GUI interface, it causes the driver loosing connection?
ERROR in sendSOPASCommand(): sendCommandBuffer failed
ERROR in sendSOPASCommand(): sendCommandBuffer failed
ERROR in mainGenericLaser: init failed, retrying...
ROS_WARN: Disconnecting TCP-Connection.

What is the best way to redirect driver console output without affecting it?
Thanks

The ROS sample application is intended as a console application. Therefore, a redirection to the GUI is not actually intended. If you try it anyway, it should actually have no effect on the interaction between Lidar and the Linux system.
Maybe it would be an alternative for you to use the generic version of the driver which works without ROS. Then you could embed the functionality well into a GUI based program.

Maybe it could also be helpful that you redirect the output to files and then read them in the GUI.
Informational link: https://medium.com/linuxstories/bash-pipes-and-redirections-4c267c13643b

Thank you for your reply. Running the generic version on Windows. Redirecting streams with redbuf() function led to the driver connection failure even when running on a different thread. As for redirection to files, I tried it too, the same affect, but didn't try it on a different thread. BTW attaching a new windows console to the gui application and redirecting output stream to it leads to the same failure. That's why I was wondering if it could potentially affect the driver, don't have much time to analyze the code.


[Debugger] Fix debug hit failure for object init() method inside language and standard libraries

Purpose
This PR will fix debug hit failure for object init() method inside language and standard libraries
Fixes https://github.com/ballerina-platform/ballerina-lang/issues/34258

Closing as I've sent a new PR including test fixes with https://github.com/ballerina-platform/ballerina-lang/pull/34697


Update version retire post-release section

Update the example PR for post-release version retiring, noting it includes the evaluation pipeline.

I am extremely reluctant to approve this. If the pipelines are deleted then any 'locked' jobs will disappear. On two separate occasions I have lost tagged built levels (which were advertised externally) for RISC-V as a result of this process because the tagged builds are never pushed explicitly to GitHub for evaluation pipelines.
For JDK19 I ended up recreating the build jobs at https://ci.adoptium.net/job/jdk19u-linux-riscv64-temurin/ as a result of this, so we need to take care not to just blindly remove these jobs without having some alternate solution in place for people who wish to use the evaluation platforms.

Yes agree, i've remove the - delete piplines and jobs line


composite primary key

Hi guys,
I know that like this i can define my own primary key:
var collection = db.addCollection("test", [
unique: ["name"]
]);
Is there a possibility to use a composite primary key, something like
unique: ["name" + "birthday"]
?
Greetings!

@Simsal, no, the current design of Loki does not support that functionality. Sorry.

Same problem,  And I solved it by catching the 'pre-insert' event to constrains the compound unique key manually.
The code may like this :
my_coll.on('pre-insert', o=>{
	let uk = ['k1','k2','k3']; //compound unique keys
	if(uk && uk.length>1){
		let q = {};
		uk.forEach(f=>q[f] = o[f]);
		if(my_coll.findOne(q)) throw new Error(`Duplicate unique key for: ${JSON.stringify(q)}` );
	}
});

Hope to be useful for someone that have the same question.


Format with ruff and enable formating in pre-commit

No real code changes and test pass so merging.


Share Grafana Dashboard

Can you share your grafana dashboard?

Good idea! Solved in 25fb6cc

Awesome 🤩 works 🚀

my server is currently not running, so that's why no "api" data


Convert approx_eq! calls to assert_approx_eq!

Resolves issue #2140
No other changes were needed, all tests still passed after this change.

Thanks for taking this on! Overall it looks good, but the changelog entry should be moved from the Added section to the Maintenance section, because this isn't actually a new feature that Druid users can use, but instead it involves internal tests.

Gotcha. That amend should fix it.


Add existingsecret to policiesbundle

Description
Add the possibility to specify an existing secret for the policiesBundle secret.
Related issues

Close #1951

Checklist

[ ] I've read the guidelines for contributing to this repository.
[ ] I've added tests that prove my fix is effective or that my feature works.
[ ] I've updated the documentation with the relevant information (if needed).
[ ] I've added usage information (if the PR introduces new options)
[ ] I've included a "before" and "after" example to the description (if the PR is a user interface change).

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


Add tox tests for Pandas 2.

Add tox tests for Pandas 2 (currently won't be passing until #27221 is fully fixed).

R: @tvalentyn


Add role="tablist" & aria-multiselectable="true" to accordion .panel-group

To improve accessibility.
Refs #13555.
Per https://github.com/paypal/bootstrap-accessibility-plugin/blob/master/README.md#collapse
Credit: https://github.com/paypal/bootstrap-accessibility-plugin

In the HTML validator in Netbeans I get this warning message
aria-multiselectable="true" not allowed on element div at this point
I am not sure if this is an issue with the NetBeans HTML validator (NetBeans 8.1), or with the markup from BootStrap.  Can anyone clarify for me?

@craiglondon It's a valid HTML5 attribute. Presumably your validator is either outdated or is set to HTML4 mode. Please ask this sort of question on StackOverflow or similar in the future.


User::sane_destroy should be more efficient

These jobs can run for a very long time. There is one running now for 9 hours for a user with ~450 observations and ~5000 identifications. The delayed jobs server running the job also has its CPU spiking. Hopefully there's some way to make these faster and use fewer resources.

An attempt was made in #1845 to improve efficiency. It mostly it prevents duplicate indexing and adds some preloading


pkgs(python3-fiona): automatic package update

Update package to the latest upstream version.
PR auto-generated by create-pull-request.

Replaced by #300


[MI-2393]: Integrate mm-ui-lib in LinkModal

Ticket ID
https://brightscout.atlassian.net/browse/MI-2393
Description

Add mm-ui-lib  Modal in LinkModal
Add Dialog for successful linking and error
Add input and DropDown component

Screenshots

This feature is on hold for now


feat: Add show_log_message input #310

✔ Related issues

Resolve #310

📑 Description

Add show_log_message input
✅ Checks

[x] My pull request adheres to the code style of this project
[x] My code requires changes to the documentation
[x] I have updated the documentation as required
[x] All the tests have passed

ℹ Additional Information

Thanks for the quick fix!
I'll test this once merged.