Teardown with App.destroy

I've been searching like crazy to nail down this bug, and I think it has to do with qunit setup/teardown.
Loading some embedded records (Responses) on my Entry model like this:
    setup: ->
      App         = startApp()
      store       = App.__container__.lookup("store:main")
      controller  = @subject()

      Ember.run ->
        store.pushPayload "entry", entryFixture
        controller.set('model', store.find('entry', entryFixture.entry.id))

    teardown: -> Ember.run(App, App.destroy)

And it works fine running a single test, but on running whole suite the first one passes then I get the following:
Setup failed on Generates #sections from catalog_definitions: Assertion Failed: Expected an object as `data` in a call to `push`/`update` for flaredown@model:response: , but was <flaredown@model:response::ember387:hbi_general_wellbeing_fd088f9929639fd742a209b4b083c421>
Source:
Error: Assertion Failed: Expected an object as `data` in a call to `push`/`update` for flaredown@model:response: , but was <flaredown@model:response::ember387:hbi_general_wellbeing_fd088f9929639fd742a209b4b083c421>
    at new Error (native)
    at Error.EmberError (http://localhost:4300/assets/vendor.js:27425:23)
    at Object.Ember.assert (http://localhost:4300/assets/vendor.js:17039:15)
    at Ember.Object.extend.push (http://localhost:4300/assets/vendor.js:75059:15)
    at http://localhost:4300/assets/vendor.js:66195:15
    at Array.forEach (native)
    at forEach (http://localhost:4300/assets/vendor.js:27206:32)
    at extractEmbeddedHasMany (http://localhost:4300/assets/vendor.js:66193:7)
    at http://localhost:4300/assets/vendor.js:66172:15
    at http://localhost:4300/assets/vendor.js:73146:20

It seems Ember.run(App, App.destroy) is not sufficient reset the test environment back to zero? What else might need to happen here?

I just ran into the same issue, any way to fix this or usable workaround?
My test looks very very similar to the one above.

Having the same problem :-(

One dirty way to get around this is using Ember.run.later to delay the destroy. I created an async helper to do this.
// tests/helpers/start-app.js
Ember.Test.registerAsyncHelper('andLater',
  function(app, callback, timeout) {
    Ember.run(function() {
      Ember.run.later(function() {
        callback();
      }, timeout || 500);
    });
  }
);

Try to call andLater at the end of your test.

I need a test case that demonstrates the problem to figure out what is happening and fix it.
Can someone make a simple demo project that I could look at?

@rwjblue By now I've managed to fix this. In our case (as in most cases I believe) it had to do with promises not passing or setting attributes on objects that have been destroyed.
What I did:

go over any jQuery stuff in the app and make sure you unbind any bound event before the view is destroyed. If binding to an event (like bootstrap modal shown) and setting an attribute in that function, use an Ember.run.
look for any code that finds/fetches models async and where you do not use the model handler of the route. If you have a .then on that find/fetch containing any attribute sets or gets make sure the object is not destroyed by checking isDestroying and isDestroyed.

Similar to @Chun-Yang i added a helper function https://github.com/rwjblue/ember-qunit/issues/83#issuecomment-95990645

@rwjblue I might have the same problem: http://emberjs.jsbin.com/mezinu/7/edit?html,css,js,output
not sure if this is the same bug that is affecting @theworkerant

@Chun-Yang What do you call andLater() with? What do you pass as the callback?

@gitjeff05  In mocha, you have done. I use
andLater(done);

For qunit, I guess there is something equivalent.

I'm still having this issue.
Properties on a controller that are being set in test #1 are still present in test #2. The Ember.run.later solution in the teardown doesn't work for me unfortunately.

I experience exactly the same issue as @temo44. Also tried the ember.run.later but I'm not sure what to pass in as a callback.

@temo44 if your properties are arrays you can probably solve it by making them computed properties like:
App.MyController = Ember.Controller.extend({
  fu: Ember.computed(function(){
    return [];
  })
});

That solved it for me: https://github.com/emberjs/ember.js/issues/10255

@alvinvogelzang Thanks for the suggestion. This was indeed how we fixed it in our application, except we did in the setupController hook. Thanks!

THANK YOU! init solved the problem for me too. @rwjblue I can imagine that this is a hard bug to figure out whats going wrong. I think I could get permission to share our source with you, pointing the backend at my machine with ngrok or something so you can run this test module and debug it yourself. I'm in the slack group @atomkirk

Ok, I think I've got a little more insight to add here. Turns out my problem was default properties on services not being reset between tests. For example, I have this service:
import Ember from 'ember';

export default Ember.Service.extend({

  items: [], // originally, I only had this without resetting it in `init`

  init() {
    this._super(...arguments)
    this.set('items', [])
  },
})

Once I explicitly reset items to [] in init it worked. So it appears the service is being reused between tests?

Looks like this issue has been resolved, so I'm going to close this issue.

You dont think its a bit odd that all the apps objects arent being destroyed between tests? Is this as designed?

@atomkirk - It isn't about destruction at all actually. Your snippet:
export default Ember.Service.extend({
  items: []
});

Is literally putting an array on the prototype of that service. The equivalent (in plain JS) is the following:
function SomeService() {}
SomeService.prototype.items = [];

This will be shared with all instances that you create.  There is no way for Ember, ember-qunit, or any other thing (other than the garbage collector I suppose) to clear that array.

I figured if the app was destroyed and recreated between every tests even the prototypes where being destroyed and recreated. For example, if I set window.AppName = null Between tests it still happens. Which shows I don't understand how it works.

@rwjblue explained this to me for a very similar question a couple of years ago. It still trips me up, and everyone else on my team every once in a while. If you are going to be frustrated by this, be frustrated by javascript, not Ember 😄
https://github.com/emberjs/ember.js/issues/10255


document sign-in method under security, not general

Update the documentation for LDAP configuration to reference the sign-in method under the Security tab in account settings, not General:

@lindy65 whoops - I merged before your review.


NoMethodError in destroy_links

This request results in a 500:
DEBUG:urllib3.connectionpool:https://www.zooniverse.org:443 "DELETE /api/workflows/2251/links/subject_sets/10593 HTTP/1.1" 500 0

Due to this error:
NoMethodError: undefined method `each' for nil:NilClass
[PROJECT_ROOT]/app/controllers/api/v1/workflows_controller.rb:94 :in `post_link_actions`
92         end
93       when "subject_sets"
94         params[:subject_sets].each do |set_id|
95           SubjectSetStatusesCreateWorker.perform_async(set_id, workflow.id)
96         end

The link is successfully removed before the error, though.

this has been fixed in #2877 - waiting to deploy to production today.


[oracle] price calculations for specific currencies should reuse the calculation for all currencies

Currently, oracle::contract::feed::Feeds::calc_prices still use the inefficient algorithm for price calculations. With the introduction of the more efficient one with oracle::contract::feed::Feeds::all_prices_iter, we shall unify and re-use the implementation adopting it in the calculation for specific currencies. Hint: use Iterator::filter on the currencies.

Not relevant anymore due to #57


Build error

❓ Questions and Help
Hi, I came across below error when I tried to  build the hiabitat-sim branch:  ff62b6dddcee04a6f5a065e4ae2d093b37f95744 :
subprocess.CalledProcessError: Command '['cmake', '-H/export/home1/NoCsBack/hci/mingxiao/R2R_ORIGIN/habitat-sim/src', '-Bbuild', '-DBUILD_PYTHON_BINDINGS=ON', '-DCMAKE_LIBRARY_OUTPUT_DIRECTORY=/export/home1/NoCsBack/hci/mingxiao/R2R_ORIGIN/habitat-sim/build/lib.linux-x86_64-3.6/habitat_sim/_ext', '-DPYTHON_EXECUTABLE=/export/home1/NoCsBack/hci/mingxiao/miniconda3/envs/vlnce_origin/bin/python', '-DCMAKE_EXPORT_COMPILE_COMMANDS=ON', '-DCMAKE_BUILD_TYPE=RelWithDebInfo', '-GNinja', '-DBUILD_GUI_VIEWERS=ON', '-DTARGET_HEADLESS=OFF', '-DBUILD_TEST=OFF', '-DBUILD_WITH_BULLET=OFF', '-DBUILD_DATATOOL=OFF', '-DBUILD_WITH_CUDA=OFF']' returned non-zero exit status 1.
The gcc version of my system is gcc 7.5.0 and the cmake version is 1.18.2.
Do someone know how to solve this error  ? Thanks in advance.

Please include more of the error log.  This currently only shows that an error happened, not what caused it.

OK。 Below are the details:
Requirement already satisfied: attrs>=19.1.0 in /export/home1/NoCsBack/hci/mingxiao/miniconda3/lib/python3.7/site-packages (from -r requirements.txt (line 1)) (19.3.0)
Requirement already satisfied: numba in /export/home1/NoCsBack/hci/mingxiao/miniconda3/lib/python3.7/site-packages/numba-0.51.2-py3.7-linux-x86_64.egg (from -r requirements.txt (line 2)) (0.51.2)
Requirement already satisfied: numpy in /export/home1/NoCsBack/hci/mingxiao/miniconda3/lib/python3.7/site-packages (from -r requirements.txt (line 3)) (1.18.1)
Requirement already satisfied: numpy-quaternion in /export/home1/NoCsBack/hci/mingxiao/miniconda3/lib/python3.7/site-packages/numpy_quaternion-2021.0.0a0-py3.7-linux-x86_64.egg (from -r requirements.txt (line 4)) (2021.0.0a0)
Requirement already satisfied: pillow in /export/home1/NoCsBack/hci/mingxiao/miniconda3/lib/python3.7/site-packages (from -r requirements.txt (line 5)) (6.2.0)
Requirement already satisfied: scipy>=1.3.0 in /export/home1/NoCsBack/hci/mingxiao/miniconda3/lib/python3.7/site-packages (from -r requirements.txt (line 6)) (1.4.1)
Requirement already satisfied: tqdm in /home/mingxiao/.local/lib/python3.7/site-packages (from -r requirements.txt (line 7)) (4.46.1)
Requirement already satisfied: llvmlite<0.35,>=0.34.0.dev0 in /export/home1/NoCsBack/hci/mingxiao/miniconda3/lib/python3.7/site-packages/llvmlite-0.34.0-py3.7-linux-x86_64.egg (from numba->-r requirements.txt (line 2)) (0.34.0)
Requirement already satisfied: setuptools in /export/home1/NoCsBack/hci/mingxiao/miniconda3/lib/python3.7/site-packages (from numba->-r requirements.txt (line 2)) (47.3.1)
mingxiao@rose:/export/home1/NoCsBack/hci/mingxiao/R2R_ORIGIN/habitat-sim$ python setup.py install
running install
running bdist_egg
running egg_info
writing habitat_sim.egg-info/PKG-INFO
writing dependency_links to habitat_sim.egg-info/dependency_links.txt
writing requirements to habitat_sim.egg-info/requires.txt
writing top-level names to habitat_sim.egg-info/top_level.txt
reading manifest file 'habitat_sim.egg-info/SOURCES.txt'
writing manifest file 'habitat_sim.egg-info/SOURCES.txt'
installing library code to build/bdist.linux-x86_64/egg
running install_lib
running build_py
running build_ext
Traceback (most recent call last):
File "setup.py", line 194, in run
subprocess.check_output(["cmake", "--version"])
File "/export/home1/NoCsBack/hci/mingxiao/miniconda3/lib/python3.7/subprocess.py", line 395, in check_output
**kwargs).stdout
File "/export/home1/NoCsBack/hci/mingxiao/miniconda3/lib/python3.7/subprocess.py", line 472, in run
with Popen(*popenargs, **kwargs) as process:
File "/export/home1/NoCsBack/hci/mingxiao/miniconda3/lib/python3.7/subprocess.py", line 775, in init
restore_signals, start_new_session)
File "/export/home1/NoCsBack/hci/mingxiao/miniconda3/lib/python3.7/subprocess.py", line 1522, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'cmake': 'cmake'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "setup.py", line 379, in
zip_safe=False,
File "/export/home1/NoCsBack/hci/mingxiao/miniconda3/lib/python3.7/site-packages/setuptools/init.py", line 161, in setup
return distutils.core.setup(**attrs)
File "/export/home1/NoCsBack/hci/mingxiao/miniconda3/lib/python3.7/distutils/core.py", line 148, in setup
dist.run_commands()
File "/export/home1/NoCsBack/hci/mingxiao/miniconda3/lib/python3.7/distutils/dist.py", line 966, in run_commands
self.run_command(cmd)
File "/export/home1/NoCsBack/hci/mingxiao/miniconda3/lib/python3.7/distutils/dist.py", line 985, in run_command
cmd_obj.run()
File "/export/home1/NoCsBack/hci/mingxiao/miniconda3/lib/python3.7/site-packages/setuptools/command/install.py", line 67, in run
self.do_egg_install()
File "/export/home1/NoCsBack/hci/mingxiao/miniconda3/lib/python3.7/site-packages/setuptools/command/install.py", line 109, in do_egg_install
self.run_command('bdist_egg')
File "/export/home1/NoCsBack/hci/mingxiao/miniconda3/lib/python3.7/distutils/cmd.py", line 313, in run_command
self.distribution.run_command(command)
File "/export/home1/NoCsBack/hci/mingxiao/miniconda3/lib/python3.7/distutils/dist.py", line 985, in run_command
cmd_obj.run()
File "/export/home1/NoCsBack/hci/mingxiao/miniconda3/lib/python3.7/site-packages/setuptools/command/bdist_egg.py", line 173, in run
cmd = self.call_command('install_lib', warn_dir=0)
File "/export/home1/NoCsBack/hci/mingxiao/miniconda3/lib/python3.7/site-packages/setuptools/command/bdist_egg.py", line 159, in call_command
self.run_command(cmdname)
File "/export/home1/NoCsBack/hci/mingxiao/miniconda3/lib/python3.7/distutils/cmd.py", line 313, in run_command
self.distribution.run_command(command)
File "/export/home1/NoCsBack/hci/mingxiao/miniconda3/lib/python3.7/distutils/dist.py", line 985, in run_command
cmd_obj.run()
File "/export/home1/NoCsBack/hci/mingxiao/miniconda3/lib/python3.7/site-packages/setuptools/command/install_lib.py", line 11, in run
self.build()
File "/export/home1/NoCsBack/hci/mingxiao/miniconda3/lib/python3.7/distutils/command/install_lib.py", line 107, in build
self.run_command('build_ext')
File "/export/home1/NoCsBack/hci/mingxiao/miniconda3/lib/python3.7/distutils/cmd.py", line 313, in run_command
self.distribution.run_command(command)
File "/export/home1/NoCsBack/hci/mingxiao/miniconda3/lib/python3.7/distutils/dist.py", line 985, in run_command
cmd_obj.run()
File "setup.py", line 198, in run
+ ", ".join(e.name for e in self.extensions)
RuntimeError: CMake must be installed to build the following extensions: habitat_sim._ext.habitat_sim_bindings

Hi. Below are the details:
running install
running bdist_egg
running egg_info
writing habitat_sim.egg-info/PKG-INFO
writing dependency_links to habitat_sim.egg-info/dependency_links.txt
writing requirements to habitat_sim.egg-info/requires.txt
writing top-level names to habitat_sim.egg-info/top_level.txt
reading manifest file 'habitat_sim.egg-info/SOURCES.txt'
writing manifest file 'habitat_sim.egg-info/SOURCES.txt'
installing library code to build/bdist.linux-x86_64/egg
running install_lib
running build_py
running build_ext
error: [Errno 2] No such file or directory: 'build/compile_commands.json'
Thanks.

Please add --cmake to your build command, seems like the error happened in cmake so it needs to be forced to re-run

Thanks. But when I added --cmake to build command, I got another error shown below :
running install
running bdist_egg
running egg_info
writing habitat_sim.egg-info/PKG-INFO
writing dependency_links to habitat_sim.egg-info/dependency_links.txt
writing requirements to habitat_sim.egg-info/requires.txt
writing top-level names to habitat_sim.egg-info/top_level.txt
reading manifest file 'habitat_sim.egg-info/SOURCES.txt'
writing manifest file 'habitat_sim.egg-info/SOURCES.txt'
installing library code to build/bdist.linux-x86_64/egg
running install_lib
running build_py
running build_ext
-- Shared libraries disabled
-- Looking for ZLIB...
-- Checking for module 'zzip-zlib-config'
--   No package 'zzip-zlib-config' found
-- Found ZLIB: optimized;/usr/lib/x86_64-linux-gnu/libz.so;debug;/usr/lib/x86_64-linux-gnu/libz.so
-- Checking for module 'minizip'
--   No package 'minizip' found
CMake Warning (dev) at /export/home1/NoCsBack/hci/mingxiao/miniconda3/envs/vlnce_origin/share/cmake-3.18/Modules/FindPackageHandleStandardArgs.cmake:273 (message):
The package name passed to find_package_handle_standard_args (rt) does
not match the name of the calling package (RT).  This can lead to problems
in calling code that expects find_package result variables (e.g.,
_FOUND) to follow a certain pattern.
Call Stack (most recent call first):
deps/assimp/cmake-modules/FindRT.cmake:19 (find_package_handle_standard_args)
deps/assimp/code/CMakeLists.txt:842 (FIND_PACKAGE)
This warning is for project developers.  Use -Wno-dev to suppress it.
-- Enabled formats: AMF 3DS AC ASE ASSBIN ASSXML B3D BVH COLLADA DXF CSM HMP IRRMESH IRR LWO LWS MD2 MD3 MD5 MDC MDL NFF NDO OFF OBJ OGRE OPENGEX PLY MS3D COB BLEND IFC XGL FBX Q3D Q3BSP RAW SIB SMD STL TERRAGEN 3D X X3D GLTF 3MF MMD
-- Disabled formats:
-- Found PythonInterp: /export/home1/NoCsBack/hci/mingxiao/miniconda3/envs/vlnce_origin/bin/python (found suitable version "3.6.12", minimum required is "3.6")
-- Bindings being generated for python at /export/home1/NoCsBack/hci/mingxiao/miniconda3/envs/vlnce_origin/bin/python
-- Found PythonInterp: /export/home1/NoCsBack/hci/mingxiao/miniconda3/envs/vlnce_origin/bin/python (found version "3.6.12")
-- pybind11 v2.3.0
-- Could NOT find Vulkan (missing: VULKAN_LIBRARY VULKAN_INCLUDE_DIR)
-- Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE)
-- Using X11 for window creation
CMake Error at /export/home1/NoCsBack/hci/mingxiao/miniconda3/envs/vlnce_origin/share/cmake-3.18/Modules/FindPackageHandleStandardArgs.cmake:165 (message):
Could NOT find X11 (missing: X11_X11_INCLUDE_PATH X11_X11_LIB)
Call Stack (most recent call first):
/export/home1/NoCsBack/hci/mingxiao/miniconda3/envs/vlnce_origin/share/cmake-3.18/Modules/FindPackageHandleStandardArgs.cmake:458 (_FPHSA_FAILURE_MESSAGE)
/export/home1/NoCsBack/hci/mingxiao/miniconda3/envs/vlnce_origin/share/cmake-3.18/Modules/FindX11.cmake:414 (find_package_handle_standard_args)
deps/glfw/CMakeLists.txt:218 (find_package)
-- Configuring incomplete, errors occurred!
See also "/export/home1/NoCsBack/hci/mingxiao/R2R_ORIGIN/habitat-sim/build/CMakeFiles/CMakeOutput.log".
See also "/export/home1/NoCsBack/hci/mingxiao/R2R_ORIGIN/habitat-sim/build/CMakeFiles/CMakeError.log".
Traceback (most recent call last):
File "setup.py", line 379, in
zip_safe=False,
File "/export/home1/NoCsBack/hci/mingxiao/miniconda3/envs/vlnce_origin/lib/python3.6/site-packages/setuptools/init.py", line 153, in setup
return distutils.core.setup(**attrs)
File "/export/home1/NoCsBack/hci/mingxiao/miniconda3/envs/vlnce_origin/lib/python3.6/distutils/core.py", line 148, in setup
dist.run_commands()
File "/export/home1/NoCsBack/hci/mingxiao/miniconda3/envs/vlnce_origin/lib/python3.6/distutils/dist.py", line 955, in run_commands
self.run_command(cmd)
File "/export/home1/NoCsBack/hci/mingxiao/miniconda3/envs/vlnce_origin/lib/python3.6/distutils/dist.py", line 974, in run_command
cmd_obj.run()
File "/export/home1/NoCsBack/hci/mingxiao/miniconda3/envs/vlnce_origin/lib/python3.6/site-packages/setuptools/command/install.py", line 67, in run
self.do_egg_install()
File "/export/home1/NoCsBack/hci/mingxiao/miniconda3/envs/vlnce_origin/lib/python3.6/site-packages/setuptools/command/install.py", line 109, in do_egg_install
self.run_command('bdist_egg')
File "/export/home1/NoCsBack/hci/mingxiao/miniconda3/envs/vlnce_origin/lib/python3.6/distutils/cmd.py", line 313, in run_command
self.distribution.run_command(command)
File "/export/home1/NoCsBack/hci/mingxiao/miniconda3/envs/vlnce_origin/lib/python3.6/distutils/dist.py", line 974, in run_command
cmd_obj.run()
File "/export/home1/NoCsBack/hci/mingxiao/miniconda3/envs/vlnce_origin/lib/python3.6/site-packages/setuptools/command/bdist_egg.py", line 167, in run
cmd = self.call_command('install_lib', warn_dir=0)
File "/export/home1/NoCsBack/hci/mingxiao/miniconda3/envs/vlnce_origin/lib/python3.6/site-packages/setuptools/command/bdist_egg.py", line 153, in call_command
self.run_command(cmdname)
File "/export/home1/NoCsBack/hci/mingxiao/miniconda3/envs/vlnce_origin/lib/python3.6/distutils/cmd.py", line 313, in run_command
self.distribution.run_command(command)
File "/export/home1/NoCsBack/hci/mingxiao/miniconda3/envs/vlnce_origin/lib/python3.6/distutils/dist.py", line 974, in run_command
cmd_obj.run()
File "/export/home1/NoCsBack/hci/mingxiao/miniconda3/envs/vlnce_origin/lib/python3.6/site-packages/setuptools/command/install_lib.py", line 11, in run
self.build()
File "/export/home1/NoCsBack/hci/mingxiao/miniconda3/envs/vlnce_origin/lib/python3.6/distutils/command/install_lib.py", line 107, in build
self.run_command('build_ext')
File "/export/home1/NoCsBack/hci/mingxiao/miniconda3/envs/vlnce_origin/lib/python3.6/distutils/cmd.py", line 313, in run_command
self.distribution.run_command(command)
File "/export/home1/NoCsBack/hci/mingxiao/miniconda3/envs/vlnce_origin/lib/python3.6/distutils/dist.py", line 974, in run_command
cmd_obj.run()
File "setup.py", line 202, in run
self.build_extension(ext)
File "setup.py", line 269, in build_extension
env=env,
File "/export/home1/NoCsBack/hci/mingxiao/miniconda3/envs/vlnce_origin/lib/python3.6/subprocess.py", line 311, in check_call
raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['cmake', '-H/export/home1/NoCsBack/hci/mingxiao/R2R_ORIGIN/habitat-sim/src', '-Bbuild', '-DBUILD_PYTHON_BINDINGS=ON', '-DCMAKE_LIBRARY_OUTPUT_DIRECTORY=/export/home1/NoCsBack/hci/mingxiao/R2R_ORIGIN/habitat-sim/build/lib.linux-x86_64-3.6/habitat_sim/_ext', '-DPYTHON_EXECUTABLE=/export/home1/NoCsBack/hci/mingxiao/miniconda3/envs/vlnce_origin/bin/python', '-DCMAKE_EXPORT_COMPILE_COMMANDS=ON', '-DCMAKE_BUILD_TYPE=RelWithDebInfo', '-GNinja', '-DBUILD_GUI_VIEWERS=ON', '-DTARGET_HEADLESS=OFF', '-DBUILD_TEST=OFF', '-DBUILD_WITH_BULLET=OFF', '-DBUILD_DATATOOL=OFF', '-DBUILD_WITH_CUDA=OFF']' returned non-zero exit status 1.

Looks like you are missing x11 headers.  You can get those via sudo apt install libx11-dev or possibly this conda package: https://anaconda.org/conda-forge/libx11-devel-cos7-x86_64 (I haven't personally tried that conda package, but it is just headers so should be fine).
As a side node, x11 headers missing typically indicates that this is a remote server, not a machine with an attached display.  If that is the case, you will need to build with --headless (and then x11 headers won't be needed anymore).

I installed x11 and also tried the command with --headless. But then I got another error:
running install
running bdist_egg
running egg_info
writing habitat_sim.egg-info/PKG-INFO
writing dependency_links to habitat_sim.egg-info/dependency_links.txt
writing requirements to habitat_sim.egg-info/requires.txt
writing top-level names to habitat_sim.egg-info/top_level.txt
reading manifest file 'habitat_sim.egg-info/SOURCES.txt'
writing manifest file 'habitat_sim.egg-info/SOURCES.txt'
installing library code to build/bdist.linux-x86_64/egg
running install_lib
running build_py
running build_ext
error: [Errno 2] No such file or directory: 'build/compile_commands.json'

Looks like cmake is still not cooperating.  Please clear the build folder with rm -rf build and try again.


Tests will run on wrong file if discovery is done with expanded files first

Run extension with basic tests
Set up the UI so that test explorer has all tests pre-expanded
Reload and click the test tab so that all tests discover
Run the last test, the test data will have the file URI of the wrong test

This is probably a carryover value during discovery

The data comes back from the PesterInterface correct, so somewhere in testcontroller the data is getting mapped to the wrong testitem perhaps.
2023-06-28 08:42:38.026 [trace] Received discovery item from PesterInterface:
{"type":"Test","id":"C:\\USERS\\JGROTE\\PROJECTS\\VSCODE-ADAPTER\\SAMPLE\\TESTS\\TRUE.TESTS.PS1>>SIMPLETEST>>TRUE SHOULD BE TRUE","error":null,"file":"C:\\Users\\jgrote\\Projects\\vscode-adapter\\sample\\Tests\\True.Tests.ps1","startLine":1,"endLine":3,"label":"True should be true","result":"Failed","duration":0,"durationDetail":"(0ms|0ms)","message":null,"expected":null,"actual":null,"targetFile":null,"targetLine":-1,"parent":"C:\\USERS\\JGROTE\\PROJECTS\\VSCODE-ADAPTER\\SAMPLE\\TESTS\\TRUE.TESTS.PS1>>SIMPLETEST","tags":[]}


nodestrokec has no effect

Hi (and thanks for the fantastic package!)
When using
using Colors
using GraphPlot
g = graphfamous("karate")
gplothtml(g,nodestrokec = RGB(1,0,0))

nodes remain as in case when I skip the nodestrokec argument. Am I misunderstanding something or is it a bug?
EDIT: nevermind; just figured out that nodestroke linewidth is 0 buy default, sorry for creating an issue!

Just clean issue.


Line number bounces weird in mobile

When you move left and right very fast, line number row bounces weird.

It is basically problem with CodeMirror, so this issue will not be fixed


bibtex @mastersthesis is not handled correctly

I use pandoc-citeproc to convert BibTeX to YAML (pandoc-citeproc -y refs.bib > refs.yaml) and afterwards I put the refs.yaml in the list of pandoc input files. When I have a @mastersthesis reference in my bibliography, it gets converted as follows:
@mastersthesis{Mustermann:1998,
  type = {Diplomarbeit},
  author = {Max Mustermann},
  title = {{Max Mustermanns Diplomarbeit}},
  school = {Musteruniversität Musterstadt},
  year = {1998},
}

becomes
---
references:
- author:
  - family: Mustermann
    given: Max
  id: Mustermann:1998
  issued:
    date-parts:
    - - 1998
  title: Max Mustermanns Diplomarbeit
  type: thesis
  genre: "Master’s thesis"
  publisher: "Musteruniversität Musterstadt"
...

I would rather have "Diplomarbeit" in the genre field, as that seems to be the one, that gets printed. How can this be fixed, without having to correct every entry in the yaml file (is this a pandoc-citeproc issue at all)?

It's a bibtex conversion issue. The string "Master's thesis" is
inserted by the resolveKey' function.  This function has the capacity
to be localized -- it takes a parameter for the locale -- but currently
only English values have been defined.
       "inpreparation" -> "in preparation"
       "submitted"     -> "submitted"
       "forthcoming"   -> "forthcoming"
       "inpress"       -> "in press"
       "prepublished"  -> "pre-published"
       "mathesis"      -> "Master’s thesis"
       "phdthesis"     -> "PhD thesis"
       "candthesis"    -> "Candidate thesis"
       "techreport"    -> "technical report"
       "resreport"     -> "research report"
       "software"      -> "computer software"
       "datacd"        -> "data CD"
       "audiocd"       -> "audio CD"
       "patent"        -> "patent"
       "patentde"      -> "German patent"
       "patenteu"      -> "European patent"
       "patentfr"      -> "French patent"
       "patentuk"      -> "British patent"
       "patentus"      -> "U.S. patent"
       "patreq"        -> "patent request"
       "patreqde"      -> "German patent request"
       "patreqeu"      -> "European patent request"
       "patreqfr"      -> "French patent request"
       "patrequk"      -> "British patent request"
       "patrequs"      -> "U.S. patent request"
       "countryde"     -> "Germany"
       "countryeu"     -> "European Union"
       "countryep"     -> "European Union"
       "countryfr"     -> "France"
       "countryuk"     -> "United Kingdom"
       "countryus"     -> "United States of America"
       "newseries"     -> "new series"
       "oldseries"     -> "old series"

If you can edit this and insert German equivalents to the English
phrases, we can add German localization.
+++ Johannes Ballmann [Jan 09 15 10:58 ]:

I use pandoc-citeproc to convert BibTeX to YAML (pandoc-citeproc -y refs.bib > refs.yaml) and afterwards I put the refs.yaml in the list of pandoc input files. When I have a @mastersthesis reference in my bibliography, it gets converted as follows:
@mastersthesis{Mustermann:1998,
 type = {Diplomarbeit},
 author = {Max Mustermann},
 title = {{Max Mustermanns Diplomarbeit}},
 school = {Musteruniversität Musterstadt},
 year = {1998},
}

becomes
---
references:
- author:
 - family: Mustermann
   given: Max
 id: Mustermann:1998
 issued:
   date-parts:
   - - 1998
 title: Max Mustermanns Diplomarbeit
 type: thesis
 genre: "Master’s thesis"
 publisher: "Musteruniversität Musterstadt"
...

I would rather have "Diplomarbeit" in the genre field, as that seems to be the one, that gets printed. How can this be fixed, without having to correct every entry in the yaml file (is this a pandoc-citeproc issue at all)?

Reply to this email directly or view it on GitHub:
https://github.com/jgm/pandoc-citeproc/issues/98

I'll have a look on the translations this weekend.
But even if this was translated – "mathesis" -> "Masterarbeit" – I would have no way to reference to a Diplomarbeit. In BibTeX type = {Diplomarbeit}, could be used in a @mastersthesis reference (@phdthesis would work too, I think), to accomplish that.
That's my Problem: the type argument does not seem to be used.

@fibsifan: You could try the biblatex entry type @thesis with type = {Diplomarbeit}. This is mapped to CSL YAML genre: Diplomarbeit as expected.
@jgm: It seems this reveals a small pandoc-citeproc bug. Apparently in bibtex mastersthesis and phdthesis entries, the content of the type field, if present, should replace the default value of  “Master’s thesis” and “PhD thesis” just as it does for biblatex thesis entries.
From the 1988 bibtex specs, http://mirrors.ctan.org/biblio/bibtex/base/btxdoc.pdf:
“The MASTERSTHESIS and PHDTHESIS entry types now take an optional type field. For example you can get the standard styles to call your reference a ‘Ph.D. dissertation’ instead of the default ‘PhD thesis’ by including a type = "{Ph.D.} dissertation" in your database entry.”

Thank you @nickbart1980.
@jgm: I am not sure about the first 4 and the last 2. phdthesis could also be translated to Doktorarbeit. When i use LaTeX and
\usepackage[ngerman]{babel}
\usepackage[numbers,round]{natbib}
\bibliographystyle{alphadin}

it is listed as "Diss."
"inpreparation" -> "in Vorbereitung"
"submitted" -> "eingereicht"
"forthcoming" -> "im Erscheinen"
"inpress" -> "in Druck"
"prepublished" -> "vorveröffentlicht"
"mathesis" -> "Masterarbeit"
"phdthesis" -> "PhD-Dissertation"
"candthesis" -> "Kandidatur-Dissertation"
"techreport" -> "technischer Bericht"
"resreport" -> "Forschungsbericht"
"software" -> "Software"
"datacd" -> "Daten-CD"
"audiocd" -> "Audio-CD"
"patent" -> "Patent"
"patentde" -> "Deutsches Patent"
"patenteu" -> "Europäisches Patent"
"patentfr" -> "Französisches Patent"
"patentuk" -> "Britisches Patent"
"patentus" -> "US-Patent"
"patreq" -> "Patentantrag"
"patreqde" -> "Deutscher Patentantrag"
"patreqeu" -> "Europäischer Patentantrag"
"patreqfr" -> "Französischer Patentantrag"
"patrequk" -> "Britischer Patentantrag"
"patrequs" -> "US-Patentantrag"
"countryde" -> "Deutschland"
"countryeu" -> "Europäische Union"
"countryep" -> "European Union"
"countryfr" -> "Frankreich"
"countryuk" -> "Vereinigtes Königreich"
"countryus" -> "Vereinigte Staaten von Amerika"
"newseries" -> "neue Folge"
"oldseries" -> "alte Folge"

I'd simply borrow the biblatex translations; adapted from my local /usr/local/texlive/2014/texmf-dist//tex/latex/biblatex/lbx/german.lbx:
"inpreparation" -> "in Vorbereitung"
"submitted" -> "eingereicht"
"forthcoming" -> "im Erscheinen"
"inpress" -> "im Druck"
"prepublished" -> "Vorveröffentlichung"
"mathesis" -> "Magisterarbeit"
"phdthesis" -> "Dissertation"
-- "candthesis" -> "" -- missing
"techreport" -> "Technischer Bericht"
"resreport" -> "Forschungsbericht"
"software" -> "Computer-Software"
"datacd" -> "CD-ROM"
"audiocd" -> "Audio-CD"
"patent" -> "Patent"
"patentde" -> "deutsches Patent"
"patenteu" -> "europäisches Patent"
"patentfr" -> "französisches Patent"
"patentuk" -> "britisches Patent"
"patentus" -> "US-Patent"
"patentde" -> "deutsches Patent"
"patenteu" -> "europäisches Patent"
"patentfr" -> "französisches Patent"
"patentuk" -> "britisches Patent"
"patentus" -> "US-Patent"
"patreq" -> "Patentanmeldung"
"patreqde" -> "deutsche Patentanmeldung"
"patreqeu" -> "europäische Patentanmeldung"
"patreqfr" -> "französische Patentanmeldung"
"patrequk" -> "britische Patentanmeldung"
"patrequs" -> "US-Patentanmeldung"
"patreqde" -> "deutsche Patentanmeldung"
"patreqeu" -> "europäische Patentanmeldung"
"patreqfr" -> "französische Patentanmeldung"
"patrequk" -> "britische Patentanmeldung"
"patrequs" -> "US-Patentanmeldung"
"countryde" -> "Deutschland"
"countryeu" -> "Europäische Union"
"countryep" -> "Europäische Union"
"countryfr" -> "Frankreich"
"countryuk" -> "Großbritannien"
"countryus" -> "USA"
"newseries" -> "neue Folge"
"oldseries" -> "alte Folge"

from /usr/local/texlive/2014/texmf-dist//tex/latex/biblatex/lbx/french.lbx:
"inpreparation" -> "en préparation"
"submitted" -> "soumis"
"forthcoming" -> "à paraître"
"inpress" -> "sous presse"
"prepublished" -> "prépublié"
"mathesis" -> "mémoire de master"
"phdthesis" -> "thèse de doctorat"
"candthesis" -> "thèse de candidature"
"techreport" -> "rapport technique"
"resreport" -> "rapport scientifique"
"software" -> "logiciel"
"datacd" -> "cédérom"
"audiocd" -> "disque compact audio"
"patent" -> "brevet"
"patentde" -> "brevet allemand"
"patenteu" -> "brevet européen"
"patentfr" -> "brevet français"
"patentuk" -> "brevet britannique"
"patentus" -> "brevet américain"
"patentde" -> "brevet allemand"
"patenteu" -> "brevet européen"
"patentfr" -> "brevet français"
"patentuk" -> "brevet britannique"
"patentus" -> "brevet américain"
"patreq" -> "demande de brevet"
"patreqde" -> "demande de brevet allemand"
"patreqeu" -> "demande de brevet européen"
"patreqfr" -> "demande de brevet français"
"patrequk" -> "demande de brevet britannique"
"patrequs" -> "demande de brevet américain"
"patreqde" -> "demande de brevet allemand"
"patreqeu" -> "demande de brevet européen"
"patreqfr" -> "demande de brevet français"
"patrequk" -> "demande de brevet britannique"
"patrequs" -> "demande de brevet américain"
"countryde" -> "Allemagne"
"countryeu" -> "Union européenne"
"countryep" -> "Union européenne"
"countryfr" -> "France"
"countryuk" -> "Royaume-Uni"
"countryus" -> "États-Unis"
"newseries" -> "nouvelle série"
"oldseries" -> "ancienne série"

Other biblatex language files (including brazilian.lbx, catalan.lbx, croatian.lbx, czech.lbx, danish.lbx, dutch.lbx, finnish.lbx, greek.lbx, icelandic.lbx, italian.lbx, norsk.lbx, norwegian.lbx, nynorsk.lbx, polish.lbx, portuges.lbx, portuguese.lbx, russian.lbx, slovene.lbx, spanish.lbx, swedish.lbx) could easily be adapted, too, though not all of them provide the complete set of terms.

Tried to patch Bibtex.hs by adding
resolveKey' (Lang "fr" "FR") k =
  case map toLower k of
       "inpreparation" -> "en préparation"
       "submitted"     -> "soumis"
       "forthcoming"   -> "à paraître"
       "inpress"       -> "sous presse"
       "prepublished"  -> "prépublié"
       "mathesis"      -> "mémoire de master"
       "phdthesis"     -> "thèse de doctorat"
       "candthesis"    -> "thèse de candidature"
       "techreport"    -> "rapport technique"
       "resreport"     -> "rapport scientifique"
       "software"      -> "logiciel"
       "datacd"        -> "cédérom"
       "audiocd"       -> "disque compact audio"
       "patent"        -> "brevet"
       "patentde"      -> "brevet allemand"
       "patenteu"      -> "brevet européen"
       "patentfr"      -> "brevet français"
       "patentuk"      -> "brevet britannique"
       "patentus"      -> "brevet américain"
       "patreq"        -> "demande de brevet"
       "patreqde"      -> "demande de brevet allemand"
       "patreqeu"      -> "demande de brevet européen"
       "patreqfr"      -> "demande de brevet français"
       "patrequk"      -> "demande de brevet britannique"
       "patrequs"      -> "demande de brevet américain"
       "countryde"     -> "Allemagne"
       "countryeu"     -> "Union européenne"
       "countryep"     -> "Union européenne"
       "countryfr"     -> "France"
       "countryuk"     -> "Royaume-Uni"
       "countryus"     -> "États-Unis"
       "newseries"     -> "nouvelle série"
       "oldseries"     -> "ancienne série"
       _               -> k

… but I'm confused as to what settings are required to activate this. locale: fr-FR in a document's YAML metadata switches CSL terms to French, but leaves the biblatex terms above unchanged. Adding -V locale: fr-FR to the command line does not seem to work at all, not even for the CSL terms..
I'm also confused by the documentation: http://johnmacfarlane.net/pandoc/README.html only mentions lang (which doesn't even seem to affect CSL terms) but not locale.
I feel it'd be best if we had just one variable for this, e.g. locale with values en-US, fr-FR, etc. which would also set the correct babel language for LaTeX etc.
A command line switch for pandoc-citeproc -y and -j to enable setting the locale to be used would also be nice.

@nickbart1980 - in bibtex conversion, pandoc-citeproc looks to the LANG environment variable.

OK, I think this is all working now.

Well, it doesn't seem to work here yet. Neither locale: fr-FR in the metadata nor -M locale=fr-FR on the command line seem to do the trick – both generate French guillemets around the title (as expected) but output “PhD thesis”. Only when export LANG=fr_FR.UTF-8 is uncommented, “Thèse de doctorat” is printed.
Example:
#!/bin/sh

#export LANG=fr_FR.UTF-8

echo "@thesis{item1,
	Author = {Student, Stu},
	Date = {2013},
	Institution = {Institution},
	Location = {Location},
	Title = {Title},
	Type = {phdthesis},
}
" > test-thesis.bib

pandoc -F pandoc-citeproc -t markdown-citations << EOT

@item1

---
locale: fr-FR
bibliography: test-thesis.bib
...

EOT

pandoc -F pandoc-citeproc -t markdown-citations  -M locale=fr-FR << EOT

@item1

---
bibliography: test-thesis.bib
...
EOT

+++ nickbart1980 [May 06 15 03:16 ]:

Well, it doesn't seem to work here yet. Neither locale: fr-FR in the metadata nor -M locale=fr-FR on the command line seem to do the trick – both generate French guillemets around the title (as expected) but output “PhD thesis”. Only when export LANG=fr_FR.UTF-8 is uncommented, “Thèse de doctorat” is printed.

Yes, for bibtex conversion only LANG matters; locale in metadata is
ignored.  I'll look into fixing that.

@nickbart1980 this last commit should do the trick.

Yes it does. Great.


Log errors correctly from onAuthorize and onCancel

Currently these get passed all the way back down to the popup/lightbox, and are swallowed if this is already closed. Need to catch them inside the button.

Done.


Project Timeline - Default Sort

As a user
I want the works sorted by start date
so that I can always have works in similar timelines stacked together for easier comparison
Acceptance Criteria
Scenario 1:
GIVEN I am logged in to EPIC.track
WHEN I navigate to the Project Timeline page
THEN I see the works sorted by:

start date

We have it by Start Date because I know we're capturing this on the Work Modal.
End Date would be better if it's not hard to get.

@Connor1892 @maria-kuzmenko any default sorting applied to the timeline view will be also applied to the cards view. Are we okay with that?

@Connor1892 can't sort by end date boss, not easy to  get. I sorted by start_date in descending order

@jadmsaadaot , @Connor1892
last update from Geoff per discussion: default sort is alphabetical

@jadmsaadaot @maria-kuzmenko @dinesh-aot
After Talking with Maria and Dinesh we are going to try start date for default sort.
Alphabetical provides no value so we want to try start date first.

putting earliest at the bottom is a smart move! keeps the shortest and newest at the top. 😁


runtime error

when i run the GAT to train，i got this "RuntimeError: unsupported tensor layout: Sparse". I dont what happen,my input isn't sparse.This error is happen in the code "attention = torch.where(adj > 0, e, zero_vec)"

Have you solved it, I am also very distressed and frustrated with the same problem as you and don't know what to do. Please help me, thank you very much.


Initialize proofreading data on seeding

I think right now the seeding scripts don't cover anything relevant to https://ambuda.org/proofing/ — so setting up a project from scratch for local development is a bit of a pain (requires creating a user, uploading an image (earlier) or PDF (now — maybe it also requires celery). Would be good to have a user and a proofreading project created automatically to make local development easier.
Other ideas / more generally:

Export a safe subset of the db (a mini-prod) that can be used for local development.
(Eventually, when stability / making it easier for new contributors is more important that new features) Have a checklist for new feature PRs that, apart from "does it have tests" etc, includes "can this code get exercised on a fresh local install, without further setup"

Parts of these are available already through ./cli.py create-user, ./cli.py add-role, and ./cli.py create-test-project, but there's room to streamline them (especially after a make install). Would be happy to receive a PR here.

Thanks, I tried but:
(env) ➜  ~/websites/ambuda-v6 git:(main) ✗ ./cli.py create-test-project foo
Traceback (most recent call last):
  File "/Users/shreevatsa/websites/ambuda-v6/./cli.py", line 102, in <module>
    cli()
  File "/Users/shreevatsa/websites/ambuda-v6/env/lib/python3.9/site-packages/click/core.py", line 1130, in __call__
    return self.main(*args, **kwargs)
  File "/Users/shreevatsa/websites/ambuda-v6/env/lib/python3.9/site-packages/click/core.py", line 1055, in main
    rv = self.invoke(ctx)
  File "/Users/shreevatsa/websites/ambuda-v6/env/lib/python3.9/site-packages/click/core.py", line 1657, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/Users/shreevatsa/websites/ambuda-v6/env/lib/python3.9/site-packages/click/core.py", line 1404, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/Users/shreevatsa/websites/ambuda-v6/env/lib/python3.9/site-packages/click/core.py", line 760, in invoke
    return __callback(*args, **kwargs)
  File "/Users/shreevatsa/websites/ambuda-v6/./cli.py", line 88, in create_test_project
    default_status = session.query(db.PageStatus).filter_by(name="reviewed-0").one()
  File "/Users/shreevatsa/websites/ambuda-v6/env/lib/python3.9/site-packages/sqlalchemy/orm/query.py", line 2865, in one
    return self._iter().one()
  File "/Users/shreevatsa/websites/ambuda-v6/env/lib/python3.9/site-packages/sqlalchemy/engine/result.py", line 1417, in one
    return self._only_one_row(
  File "/Users/shreevatsa/websites/ambuda-v6/env/lib/python3.9/site-packages/sqlalchemy/engine/result.py", line 562, in _only_one_row
    raise exc.NoResultFound(
sqlalchemy.exc.NoResultFound: No row was found when one was required

I think what would be better is something like:

Set up a "default local db", that will be what a new developer sees
Have your local db get reset to this default local db every few minutes or on every git commit, so that issues with local dev environment get caught early

Right now it seems that making it smooth/easy for new contributors to drop in and contribute is very low in the list of priorities.
In my experience so far, the success rate of "if I run git pull or git clone, can I try to make the change I was intending to do, or will I be distracted by having to fix this-and-that first" is very close to 0%. (E.g. after a new install there are 0 texts, which makes no sense… how is anyone developing anything locally? They must have some special local state that is not what a new user would see.)
This prioritization may make sense at this time, but at some point that may change, hopefully.

it seems that making it smooth/easy for new contributors to drop in and contribute is very low in the list of priorities.

I'm curious why you think so given that the most recent activity to the repo are fixes for #174, #175, #177, #178, and #179 and this discussion on #176, all of which I prioritized as soon as you mentioned them.

Have your local environment get reset to this default one every few minutes or on every git commit

For the development to work at 100%, we need to defene various API keys (reCAPTCHA, Google Cloud, Sendgrid) that can't be checked in. So the .env file will always need to be manually edited if an end user wants to use 100% of the site.
Likewise, even a toy database contains hundreds of megabytes of data and hundreds of megabytes of image data on the file system, ~all of which requires a network call to set up. I don't think it's feasible to have developers run this on every commit.
What makes more sense to me is to have a staging deploy that we run on a clean environment after each pull request. I've wanted a staging deploy for a long time, and I think it will be necessary to our devops work as well.

E.g. after a new install there are 0 texts, which makes no sense… how is anyone developing anything locally? They must have some special local state that is not what a new user would see.)

Perhaps this is a difference in mental model. To me, install doesn't imply anything about a database, which is why make install ends with:
To add data to the database, try either of the commands below:

    # A smaller install with some missing data
    make db-seed-basic

    # A full install that's larger and slower
    make db-seed-all

For help, join our Discord: https://discord.gg/7rGdTyWY7Z

Happy coding!

I find it useful to have the option of a basic seed to play around with some toy data or a full seed that replicates prod quite closely. Happy to hear what you would like to see done differently here.

(E.g. after a new install there are 0 texts, which makes no sense… how is anyone developing anything locally? They must have some special local state that is not what a new user would see.)

@shreevatsa You should run make db-seed-basic to get the texts locally: https://ambuda.readthedocs.io/en/latest/installation.html#data-dependencies

Resolved with various fixes. Going forward, let's figure out how to weave in more process and guardrails without slowing down dev velocity.


Line Protocol Tutorial doesn't list differences between Tags and Field values in terms of quotes

In the "Tag Set" section, the docs do not discuss the differences between Tag and Field value string quoting. When performing an INSERT query, double quotes for Tag field values get included in the InfluxDB data, unlike Field values.
The docs need to make it clear that for Tag values, double quotes should not be used.
Relevant URLs
https://docs.influxdata.com/influxdb/v1.8/write_protocols/line_protocol_tutorial/

Thanks @bogo666. The line protocol docs in the 1.x line could use some updating. In the mean time, you may be better served to use the line protocol reference in the 2.0 docs: https://docs.influxdata.com/influxdb/v2.0/reference/syntax/line-protocol/
I believe the only difference between line protocol in 1.x vs 2.0 is that 2.0 supports unsigned integers. I don't believe 1.8 does.

Oh, to address your specific question, here's the section on quoting: https://docs.influxdata.com/influxdb/v2.0/reference/syntax/line-protocol/#quotes


Add all EntityComponent instances to hass.data

Description:
Until now each component that uses the EntityComponent helper class is responsible to handle adding it's instance to hass.data. That leaves many others not to do so, since it might have been missed.
To change that I propose to let the EntityComponent class handle this during the initialization via hass.data[domain] = self.
I intent to start working on an experimental component reload service similar to reload_core_config for which it would be useful to have access to each EntityComponent instance and its async_prepare_reload method.
Checklist:

[ ] The code change is tested and works locally.
[x] Local tests pass with tox. Your PR cannot be merged unless tests pass
[x] Tests have been added to verify that the new code works.

I don't think this is a good change. EntityComponent is an implementation detail of a component.
We already support reloading things via config entry unload/load. If an integration doesn't have proper support for it, we shouldn't hack it together as things will break and we will get the blame 😉

I see.
Beside the component reload, does it make sense to move component = hass.data[DOMAIN] = EntityComponent to EntityComponent/__init__ or is it just a leftover from the beginning that can/should be removed (with a few exceptions, namely the group one)?

I can see how it's helpful in limiting boiler plate, but it also means that we're making the choice that something is exposed and not the component author.

That might be true. However this is already the case for many platforms if their component exposes it (sensor, alarm_control_panel, cover, camera, climate, media_player, ...).
I would say that it might be useful to have the EntityComponent's accessible, say from the component init file, but at least now it doesn't make that much of a difference.

But I think that the way it is now, is not that much overhead (it's just a hass.data[DOMAIN] =  and it keeps the components in control of what they expose, which is a good thing.

I think that we should close this PR.

This PR would have been useful for reloading, but I agree that now it doesn't really save that much. I'll close it.

hmm just following up. I think that we might want something similar to this but then keep all entity components in a single list in hass.data.
The use case is that I want to add a new service to trigger an update for any entity. In that case we would need to be able to access it.

So eh, I am going to revive your PR but won't update the components. It will be a private cache just for entity component helper.

what do you think of this https://github.com/home-assistant/home-assistant/pull/17278

:+1: That works as well. Do you want me to update all remaining references after your PR is merged, so we don't store duplicates?

No. The DATA_KEY should remain internal for entity component. I don't want components to rely on side effects of other classes to access their entity components.


when to system.suicide

Questions about system.suicide
https://github.com/paritytech/substrate/blob/5a7600912b7fd50091990899e8ad93ad618f40c4/frame/system/src/lib.rs#L727-L744
Am I right the only purpose of this call is to remove account (i.e. nonce)?
Why anyone will want to pay tx fee to call this method?
The condition is balance is zero. But when balance is zero, it won't be able to pay tx fee to call this method? I guess it is possible to make balance just above ExistentialDeposit so after deduct tx fee it will drop below ExistentialDeposit and set to zero. But this still does not making much sense to me.
Why this method have no DB write?

Read bit more code, seems like this is just a fallback method not meant to be use by Polkadot/Kusama? Because when account balances drops to zero it will automatically call kill_account to wipe the data.
So it is for other chains to use?

Yes, I think this only applies when balances in not part of the AccountData.
Remember that AccountData in FRAME System and the Balances pallet both support keeping the nonce and balance information separate. If it is separate, and for whatever reason there is no kill_account hook on the data that is stored in AccountData, this suicide function will allow a user to clean up their account.
I also agree it is not used in Polkadot/Kusama.


Unable to play songs

It isn't an issue.
But just how do I get to play songs using the spotify web api node.
Do i need to use the SDK, and if yes then how. Can someone please illustrate an example.

It seems you want to interact with the user's playback. You can view possible requests on SPotify API documentation, wrapped requests are shown as example in the Usage part of the README.


spring-cloud-config-client should not depend on spring-boot-starter

As spring-cloud-config-client is first and foremost a library and not an application, it should not depend on spring-boot-starter which in turn pulls in spring-boot-starter-logging which in turn pulls in logback-classic which most likely is not needed by spring-cloud-config-client at all.
IMHO libraries should carefully define which libraries they need and only depend on those. Applications/microservices on the other hand can use the Spring Boot Starter POMs to get a consistent set of dependencies.
I would guess spring-cloud-config-client only needs spring-boot, spring-boot-autoconfigure and slf4j-api (and spring-security-crypto, which is managed by its own anyway).

I think spring-boot-starter is pretty innocuous (just some logging dependencies and spring-boot), but I suppose I take the point. We probably won't change anything in 1.0.*. If you don't like logback you can exclude spring-boot-starter-logging.


bug: not able to install cordova for windows 8

Type: bug
Platform: desktop browser
C:\Users\Administrator>npm install -g cordova
npm WARN engine<EMAIL_ADDRESS>wanted: {"node":"~0.10.x"} (current: {"node":"
0.12.0","npm":"2.5.1"})
npm WARN engine<EMAIL_ADDRESS>wanted: {"node":">=0.6","npm":"1"} (current: {"node":
"0.12.0","npm":"2.5.1"})
npm WARN engine<EMAIL_ADDRESS>wanted: {"node":"0.8.x || 0.10.x"} (current: {
"node":"0.12.0","npm":"2.5.1"})

Greetings @RAKSHITHML!
My sensors indicate that you need to update your issue through our custom issue form. We are now requiring all issues to be submitted this way, to ensure that we have all of the information necessary to fix them as quickly as possible.
Click Here To Update Your Issue
I will have no choice but to close this issue if it is not resubmitted through the form. Please fill out the rest of the form, so that I may use my friendly robot powers to assist you.
Thank you!

Greetings @RAKSHITHML!
My sensors indicate that you have created an issue on our tracker requesting usage help, rather than an actual error with Ionic framework.
This GitHub issue tracker is used to track framework features, problems, and development.
If you wish to get help using the framework itself, the recommended place is the forum. There are many humans there who would be happy to offer sage advice.
Thank you for allowing me to assist you.


Website feedback

Just some feedback for you mate, I have imported like 1000 capcodes from my other system and it now runs much slower than before when loading the index page and search pages.
I imagine it might be to do with the capcode - alias matching you have set up. Not a major issue really, but something to look at down the track?

Definitely... I've only got a touch over 100 capcodes in mine, haven't seen any performance issues yet. One of the things I'll likely be prioritising sometime soon is getting it working with AWS's DynamoDB (particularly since it's free ;)) and locally run MongoDB. SQLite just doesn't scale well for this kinda thing.
Might see if we can get a quick win boost in performance by adding an index on the address column.

So far I have 927 capcodes and 14000 messages (over the past five days).
I'm not 100% on SQLite (I tend to use MS SQL) but I did add an index on both tables and did not notice any improvement, hopefully you have better luck than me!
It is still really quick displaying the new pagers as they come in though.
Yeah either of those database options would be great!


CRA 2 in a project using handsontable generates a warning for pikaday.js - Critical dependency: the request of a dependency is an expression

Is this a bug report?
Maybe
Did you try recovering your dependencies?
Yes. I did that on the upgrade process and again later to be sure.
I'm using yarn 1.5.1
Also reproducible on a newly created CRA
Environment
System:
OS: macOS High Sierra 10.13.6
CPU: x64 Intel(R) Core(TM) i5-4278U CPU @ 2.60GHz
Binaries:
Node: 8.11.1
Yarn: 1.5.1
npm: 6.4.1
npmPackages:
@handsontable/react: ^1.1.0 => 1.1.0
react: ^16.5.2 => 16.5.2
react-dom: ^16.5.2 => 16.5.2
react-scripts: 2.0.3 => 2.0.3
npmGlobalPackages:
create-react-app: 2.0.2
Steps to Reproduce

Happened to me when upgrading an existing project that uses handsontable. But it is also reproducible in a new CRA

Create a new CRA
Install handsontable:
yarn add @handsontable/react handsontable
or
yarn add @handsontable/react<EMAIL_ADDRESS>Import it to App.js:

import { HotTable } from "@handsontable/react"
import Handsontable from "handsontable"

3.1 (Optional) Use the components to avoid no-unused-vars
4. Run yarn start
Expected Behavior
The project was supposed to be compiled with no warnings, as it would if it was using CRA 1.4.1
Actual Behavior
The project will be compiled with the following warning:
./node_modules/pikaday/pikaday.js
Critical dependency: the request of a dependency is an expression

Reproducible Demo
https://github.com/TCezarRod/cra-handsontable-warning
This is a simple CRA with Handsontable installed and imported on App.js.
Just starting the project should trigger the warning
yarn install
yarn start

Looks like this warning is from webpack https://github.com/webpack/webpack/issues/196

Indeed it comes from webpack, tho it's happening only on v4. And it comes from a bug with Pikaday, which is a dependency of Handsontable, not with CRA.
A workaround was found in #https://github.com/dbushell/Pikaday/issues/811, but it involves ejecting the App to add settings to webpack. :(
Handsontable people said they're gonna wait for the problem to be solved on Pikaday so they can update their dependency (See #https://github.com/handsontable/handsontable/issues/5430)
So I guess I'll just have to wait until we solve this issue on Pikaday before upgrading to CRA2.
You guys may close this issue since the problem is not related to this project. Sorry for bothering

Do we understand what changed and which line specifically webpack complains about?
Just because the warning existed for a long time doesn't mean it's legit. Maybe webpack has a false positive.

It appears to be this line:
            var id = 'moment';
            try { moment = req(id); } catch (e) {}

Why did it work before?

Speculatory, but I see quite a few PRs adjusting AMD/CJS handling.
webpack defaults to the AMD export over CommonJS, so this was probably the intended (but previously broken) behavior. We should probably fully disable AMD in the next major release.


TTNN concat_bw shape mismatch with its golden function

Describe the bug
Shape mismatch between the return values of ttnn.concat_bw and it's equivalent Pytorch function
To Reproduce
Steps to reproduce the behavior:

Checkout branch amalbasaTT/concat_bw-unit-test
Run command:

pytest /home/ubuntu/tt-metal/tests/ttnn/python_api_testing/non_working_unit_tests/wormhole/test_backward_concat.py

Check the results of pytest in terminal: 2 passes and 2 errors

Expected behavior
Tests should report 2 passes and 2 errors. Passes are for concatenation along dimensions 0 and 3 (tensors are all of rank 4). Errors happen for dimensions 1 and 2:

E       AssertionError: Shape mismatch at the second return tensor, dim = 1
E       assert torch.Size([1, 8, 96, 160]) == torch.Size([3, 8, 96, 160])

E       AssertionError: Shape mismatch at the second return tensor, dim = 2
E       assert torch.Size([1, 1, 96, 160]) == torch.Size([3, 8, 96, 160])

I have a solution to this issue @Aswinmcw
PR link: https://github.com/tenstorrent/tt-metal/pull/11116

I have a solution to this issue @eyonland  @ayerofieiev-tt
PR link: https://github.com/tenstorrent/tt-metal/pull/11116

@amalbasaTT


feat: queue adapter for sqs

Work being done here: https://github.com/hyper63/hyper-adapter-sqs

First version is done, so closing this.


Fixed require cycle warning

#72

Please merge this

Looking good but I'm really short in time a.t.m. will look at in a month I think when I have more time available. Sorry for the inconvenience


Issue #167 : Implement native filtering by string

This allows one to match a string to a contact's first, middle or last name on the native side. It allows one to not have to pass the entire list of contacts to ReactNative, thus speeding up situations in which a user may have hundreds or thousands of contacts.
Closes #167

please rebase these against the current master. If you need help I can assist.

@morenoh149 Rebased against master.

Please squash the commits as well.

also consider submitting a PR against https://github.com/morenoh149/react-native-contacts-test so a collaborator can simply pop into the simulator to see if this new api endpoint works. Thanks again for the work!

Thanks for taking a look! Addressed all comments, and will look at tests.

fwiw xcode can do code formatting ctrl + i. See http://stackoverflow.com/questions/1573968/xcode-source-automatic-formatting (I didn't know this myself).


AWS IAM auth SA name support

Initial proposal: #1309
Context

Per Amazon's design, users must create one IAM Role and one Trust Relationship per Service Account (hence, per source instance). This is quite a tedious process, and for some people it is just fine to use a shared serviceAccount for selected sources.

The original PR was not merged because the solution there was based on the k8s object annotations which is not a common approach for this kind of modification in our components.
An additional requirement: provided service account may already exist; in this case, we should not reconcile it to avoid conflicts.
Proposed change
This PR introduces the following AWS Auth spec update (for all AWS components):

Deprecate spec.auth.iamRole parameter - all creation requests for AWS components with this attribute in their spec will be rejected by the webhook (and CRD requirements). Existing objects will continue their work,
Introduce a new spec.auth.iam object with roleArn and serviceAccount attributes to replace and extend the deprecated iamRole parameter. roleArn expects the value that was previously set in iamRole parameter, and serviceAccount is the Kubernetes service account name to create or re-use for the adapter deployment. At least one of the attributes must be present in the spec.auth.iam object.

Example
AWS Auth spec before:
apiVersion: sources.triggermesh.io/v1alpha1
kind: <AWS source>
metadata:
  name: foo
spec:
  arn: <resource ARN>

  auth:
    iamRole: arn:aws:iam::123456789012:role/dev-role

-service account with a preconfigured name will be created for the source by the controller.
Some options after this PR:
apiVersion: sources.triggermesh.io/v1alpha1
kind: <AWS source>
metadata:
  name: foo
spec:
  arn: <resource ARN>

  auth:
    iam:
      roleArn: arn:aws:iam::123456789012:role/dev-role

-spec format update with no behavior change - SA with the preconfigured name will be created by the controller.
apiVersion: sources.triggermesh.io/v1alpha1
kind: <AWS source>
metadata:
  name: foo
spec:
  arn: <resource ARN>

  auth:
    iam:
      roleArn: arn:aws:iam::123456789012:role/dev-role
      serviceAccount: aws-source-sa

-service account aws-source-sa will be created by the controller. If a service account with this name already exists, the controller checks the labels, and, if the label managed-by has the value triggermesh-controller, SA's owners list is updated with the current object. If the label managed-by does not exist or it has a value different from triggermesh-controller, reconciliation is skipped. Then this SA is assigned to the adapter deployment.
SA's annotation "eks.amazonaws.com/role-arn" can be overwritten by the controller only if SA is managed by the triggermesh controller and there is only one owner to it, otherwise, annotation is ignored to avoid reconciliation conflicts.
apiVersion: sources.triggermesh.io/v1alpha1
kind: <AWS source>
metadata:
  name: foo
spec:
  arn: <resource ARN>

  auth:
    iam:
      serviceAccount: aws-source-sa

-service account aws-source-sa will be created if needed and assigned to the receive adapter deployment. If the service account did not exist before, it will be created without the IAM role annotation (spec.auth.iam.roleArn is not defined) and the source will fail to authenticate against the AWS API.

Bonus 1:
Since this PR updates common reconciliation logic for Kubernetes service accounts, this also affects the GCP components. Custom KSA name support added in #1372 can now be utilized as shared and externally created service account support in GCP sources and targets.
Bonus 2:
This PR introduces a new Make target - codegen-cleanup. In dev environments where the triggermesh project is located outside the GOPATH, make codegen could result in a github.com directory created in the project's root with all the generated files in it. While I failed to find the proper configuration fix for the k8s code generators, make codegen-cleanup can fix the resulting directory tree.

For docs, I'm assuming for now that this has no impact on the spec.auth.credentials.assumeIamRole parameter which remains in the same place. Let me know if that isn't right!

@tzununbekov your Bonus 1 comment makes it sound like this feature request would be addressed by this PR: https://github.com/triggermesh/triggermesh/issues/1463
How ever, the comment from the user there indicates that this might only work for sources and not targets? Any thoughts? Perhaps there is still a TODO for GCP targets.

docs PR https://github.com/triggermesh/docs/pull/394


Could we get tvOS support? :)

As soon as somebody tests it and adds it to the pod spec. How about you?

I added tvOS to the pod spec. Let's see if it works.


Error at make build: externally-managed-environment

Describe the bug

Encounter error when running "make build". Have not proceeded past this point. followe all instructions
Setup and configuration
Current version:

Author: Alex Bäuerle<EMAIL_ADDRESS>Date:   Mon Apr 1 20:21:45 2024 -0700

    build(add-files-created-for-other-dev-envs-to-gitignore): Add files such as requirements.txt, .python-version, bun.lockb, and yarn.lock so that if anybody uses these systems, they don't accidentally push the files (#519)

My config.toml and environment vars (be sure to redact API keys):

My model and agent (you can see these settings in the UI):

Model: Did not reach this stage yet
Agent: same

Commands I ran to install and run OpenDevin:
   git clone https://github.com/OpenDevin/OpenDevin.git
   cd OpenDevin

Steps to Reproduce:

make build

Logs, error messages, and screenshots:
Additional Context

Ubuntu 23.10 (on VirtualBox)
Python 3.11
NodeJS 18.13.0
Docker

Starting frustrated with OpenDevin I'm working so hard to make my pipenv working on my windows env now they changed the installation method with make file helll yeah now is totally lost 100% linux env

Same issue for me, Arch Linux Bare-Metal.
Already install before with  python -m venv venv

Some tips in here, YMMV: https://stackoverflow.com/questions/75608323/how-do-i-solve-error-externally-managed-environment-every-time-i-use-pip-3

This is solved by the migration to poetry! If you still encounter some issues let us know 😁


[Enhancement] Compatible with only load once rowset avoid trigger compaction

Signed-off-by: meegoo<EMAIL_ADDRESS>What type of PR is this：

[ ] BugFix
[ ] Feature
[x] Enhancement
[ ] Refactor
[ ] UT
[ ] Doc
[ ] Tool

Which issues of this PR fixes ：

Fixes #
Problem Summary(Required) ：

rowsets like [0-1][2-2] is generated by former version StarRocks when load only once. It will not trigger compaction, so we need compatible with avoid unnecessary compaction when upgrade to 2.5
Checklist:

[ ] I have added test cases for my bug fix or my new feature
[ ] This pr will affect users' behaviors
[ ] This pr needs user documentation (for new or modified features or behaviors)

[ ] I have added documentation for my new feature or new function

Bugfix cherry-pick branch check:

[x] I have checked the version labels which the pr will be auto backported to target branch

[x] 2.5
[ ] 2.4
[ ] 2.3
[ ] 2.2

run starrocks_admit_test

@mergify backport branch-2.5


GENERATED column as part of PK: handling UPDATE scenario

Looking into https://github.com/github/gh-ost/issues/1000, we test an UPDATE that uses a GENERATED column that is part of the PRIMARY KEY

I think the solution is relatively straighforward. Still blocked on that CI failure though, https://github.com/github/gh-ost/issues/1001

unblocked. found the issue

so https://github.com/openark/gh-ost/pull/26/commits/4610fa771f25027cf07d3bbfea5fd4d04ff6ecfe should produce the error reported in #1000
Assuming it does, we'll then look at a solution.

Error reproduced:
https://github.com/openark/gh-ost/pull/26/checks?check_run_id=3018241407
2021-07-08 10:55:26 ERROR unique key columns is not a subset of shared columns in BuildDMLUpdateQuery


Exception thrown in wrong namespace

If you provide an empty product name, an exception is thrown in nemiah\php-fints\lib\Fhp\FinTs.php on line 91.
There must be added a backslash in order to avoid the namespace conflicts:
	if(trim($productName) == '')
		throw new **\**Exception ("Product name required!");

	if(trim($productVersion) == '')
		throw new **\**Exception ("Product version required!");

Thanks :+1:


Use block's header as timestamp when connecting transactions in connect block Use mempool's Added timestamp for state syncer mempool syncing

Use mempool's Added timestamp for state syncer mempool syncing

Current dependencies on/for this PR:

feature/proof-of-stake

PR #969   👈

This stack of pull requests is managed by Graphite.


Suggest: make bot response when reply to bubble chat from bot in the group

make bot response when we reply to bubble chat from bot in the group.
I know the default use is 'mention' & 'private' chat to be used, also the option 'group' is available. but it will be the most straightforward way to reply to bubble chat from a bot. So, it will not cause disturbance in the group.

Good idea. I will make it happen. 😃
On Fri, Apr 14, 2023 at 7:14 AM Am1nCmd @.***> wrote:

make bot response when we reply to bubble chat from bot in the group.
I know the default use is 'mention' & 'private' chat to be used, also the
option 'group' is available. but it will be the most straightforward way to
reply to bubble chat from a bot. So, it will not cause disturbance in the
group.
—
Reply to this email directly, view it on GitHub
https://github.com/Leask/halbot/issues/23, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AABY4PQNCVBGOA52J5WNCZDXBEWP7ANCNFSM6AAAAAAW6JB4NY
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

--
Sincerely,
Sixia "Leask" Huang https://leaskh.com

Awesome, can’t wait to try it out

Added in the latest version.


MM-16438: fixed and slightly improved /jira transition

ticket: https://mattermost.atlassian.net/browse/MM-16438

Fixed parameter validation
Improved transition disambiguation
Also fixed a bug in a prior commit for unmarshalling ASC

I think this got merged before @aaronrothschild review, can you please review it post-factum?

Seems to make sense.  Peronsally, I would expect both "inprogress" and "progress" to work to transition an issue to "in progress" status


fix Navbar.Item active props bug

Currently, when clicking a Navbar.Item with active prop triggering a re-render of the component, the prop active will be ignored, which leads to the is-active class never changing. It's working as intended in Dropdown.Item however.
Here's an example - regardless of the item clicked, the first item will have 'is-active'.

on a sidenote, until then you can circumvent this bug by using the Dropdown.xy components inside a Navbar.Dropdown like this:
<Navbar.Dropdown>
   <Dropdown.Content>
      <Dropdown.Item active>foo</Dropdown.Item>
      <Dropdown.Divider />
      <Dropdown.Item>some text</Dropdown.Item>
   </Dropdown.Content>
</Navbar.Dropdown>


Setting as Default file for .stl sometimes doesn't work

Select SlicerSelector as the default for all .stl files and it will revert to Xcode.
https://github.com/user-attachments/assets/3a2ff8be-674c-44f8-b1ea-17945fafa516

Workaround is to change the way the file is associated with the app
https://www.reddit.com/r/MacOS/comments/yppcmj/open_withchange_all_option_not_working_macos_131/
Doing it this way seems to work, whereas the way shown in the video above does not.


The gpu cannot be used after model conversion

Hello, I used my onnx model to convert into your tflite model, but after the conversion, the model can use CPU but not GPU, and there is a warning in the conversion process.
Checking 0/1...
INFO:deformation_layers ::Reshape will process tensor after change back to NCHW format.
INFO:deformation_layers ::Reshape will process tensor after change back to NCHW format.
INFO:deformation_layers ::Reshape will process tensor after change back to NCHW format.
INFO:deformation_layers ::Reshape will process tensor after change back to NCHW format.
INFO:deformation_layers ::Reshape will process tensor after change back to NCHW format.
INFO:deformation_layers ::Reshape will process tensor after change back to NCHW format.
INFO:tensorflow:Assets written to: C:\Users\Admin\AppData\Local\Temp\tmpae__80la\assets
INFO:tensorflow:Assets written to: C:\Users\Admin\AppData\Local\Temp\tmpae__80la\assets
WARNING:converter running::convert is successed, but model running is failed, please check carefully!

Some operators are not support on tflite-gpu, or maybe there are some issues with onnx2tflite.
If it is the former, please simplify your ONNX model and remove unimportant non computational operators, such as the post-processing part of yolov5.
If it is the latter, I hope you can provide a PR to onnx2tflite after resolving it.


Add the autofocus into the login field in login page

Summary
For better UX, in the login page, add the autofocus into the login field
Checklist

[x] Ran make check-style to check for style errors (required for all pull requests)
[x ] Ran make test to ensure unit and component tests passed
[x ] Has UI changes

Thanks @leblanc-simon for the pull request!
Per the CONTRIBUTING.md file displayed when you created this pull request, we need to add you to the list of approved contributors for the Mattermost project.
Please help complete the Mattermost contribution license agreement?
This is a standard procedure for many open source projects. Your form should be processed within 24 hours and reviewers for your pull request will be able to proceed.
Please let us know if you have any questions.
We are very happy to have you join our growing community! If you're not yet a member, please consider joining our Contributors community channel to meet other contributors and discuss new opportunities with the core team.

Setup Test Server label detected. Spinmint test server created if build succeeds (checks pass and no conflicts with base branch).

Spinmint test server created at: http://i-095f380570b43760e.spinmint.com
Test Admin Account: Email<EMAIL_ADDRESS>| Password: user-0
Test User Account: Email<EMAIL_ADDRESS>| Password: user-1
Instance ID: i-095f380570b43760e

Spinmint test server destroyed

Awesome, thanks @leblanc-simon!

@esethna Did you test this on the classic mobile apps? I'm a bit worried if this'll make the login screen behave weirdly for them

@leblanc-simon Thanks for your contribution. Please rebase to latest and fix conflicts, then we can merge this.

rebase done.
Thanks for your work !

Much thanks @leblanc-simon! Sorry for the late merge, we were waiting for the release branch to get cut


[squid:S1155] Using Collection.isEmpty() to test for emptiness

This pull request is focused on resolving occurrences of Sonar rule
squid:S1155 - “Collection.isEmpty() should be used to test for emptiness”.
You can find more information about the issue here:
https://dev.eclipse.org/sonar/rules/show/squid:S1155
Please let me know if you have any questions.
Ayman Abdelghany.

Coverage increased (+0.2%) to 41.398% when pulling 2f74741c9ca10c9365d41e09bb836386a7a51e72 on DevFactory:release/using-isempty-fix-1 into 0e96cfed7b3e4254cbed82b0e4a6adc33f99433a on ViDA-NYU:master.


New feature : added an 'autoSave' option

The option allows to automatically saving all modified files whenever a test run is started.
For compatibility purposes, the default value is false, to keep the current behavior.

+1. I also want to have this feature

Hi @hbenl, I've modified my PR so there's no more merge conflict (there wasn't initially as far as I remember, though), can you consider merging it (as it's addressing a quite popular request) ? If you find things missing before you can, just let me know ! ;-)


Web - 'Edit' Button in Paypal account name is not highlighted when the cursor comes near to it

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

Action Performed:

Go to settings > Payments
Click existing pay pal account name
Observe the section appearing with two options "Edit" and "Delete"

Expected Result:
The 'Edit' button should be highlighted when the cursor comes near to it
Actual Result:
The 'Edit' button is not highlighted when the cursor comes near to it
Workaround:
Unknown
Platforms:

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

[ ] Android / native
[ ] Android / Chrome
[ ] iOS / native
[ ] iOS / Safari
[x] MacOS / Chrome / Safari
[ ] MacOS / Desktop

Version Number: 1.3.42-21
Reproducible in staging?: y
Reproducible in production?: y
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation
https://github.com/Expensify/App/assets/93399543/238029bf-76ba-4c46-9298-9000b84d19c6
https://github.com/Expensify/App/assets/93399543/94b33f51-099f-468c-998e-4b2cccb7722e
Expensify/Expensify Issue URL:
Issue reported by: @Yokabdk
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1689713081865409
View all open jobs on GitHub

@duken0307 @hungvu193 The issue #22658 is only about cancel button for Bank account modal, and for Delete workspace and Remove members. This issue is about the 'Edit' Button. You can see the discussion for better clarification.

This Proposal comes from my alternative solution on July 11 on another issue.
Proposal
Please re-state the problem that we are trying to solve in this issue.
Web - 'Edit' Button in Paypal account name is not highlighted when the cursor comes near to it
What is the root cause of that problem?
The 'Edit' button does not have a default style, so it gets no style applied.
What changes do you think we should make in order to solve the problem?
https://github.com/Expensify/App/blob/82669ae1201f3778986ee26209fb80878f166cbd/src/pages/settings/Payments/PaymentsPage/BasePaymentsPage.js#L453-L469
We should update the first button to:
<Button
   onPress={this.navigateToAddPaypalRoute}
   style={[styles.mb4]}
   text={this.props.translate('common.edit')}
   default
/>

This will work after this PR gets merged, or I could handle this issue as part of that PR too (@Yokabdk).

Very similar issue - https://github.com/Expensify/App/issues/22658#issuecomment-1648212252 i suspect that issue might fix this one, asked @conorpendergrast for his thoughts as the BZ assignee.

We can put that in the PR for compliment since we only need one line code.

CLosing in favour of that earlier issue where this can be tackled.

@zanyrenney is this issue has still payment for contributing? I got confused because of melvin-bot's awaiting payment reminder.

@Yokabdk For context: this issue was found while fixing https://github.com/Expensify/App/issues/22658, and we have fixed it in the same PR https://github.com/Expensify/App/pull/23464. The payment for the other issue was made.
I don't know if the guides would imply any payment for reporting/fixing this one, thinking @zanyrenney knows better!


fix: bump jsv to beta.22 (fixes react-cra)

Related to: https://github.com/stoplightio/elements/pull/1426/files
Fixes react-cra build:
Before:

After:

Yes,I did - in ui-quit pr which isn't merged ;)


REST service to update an existing Rasa story

AS AN Architect
I WANT to have a REST service to update an existing Rasa story
SO THAT there wouldn't be duplicate services for it
Acceptance Criteria

[ ] Use POST service /rasa/stories/update
[ ] Apply changes on Rasa stories.yml
[ ] Changes apply only in case #112 responds with HTTP 200
[ ] When updating a rule, use #110 to re-write an existing slot with new content

@RaulAltmae please link this issue with an appropriate pull request.

Pull request https://github.com/buerokratt/Training-Module/pull/160

BUG - Unable to update existing Rasa storys, says it's updated yet nothing changes.

Short summary: When editing a service then pressing the save button, then checking this story again the changes have not been saved.
Expected result: when saving the changes to the story then they are persistent after checking the edit again.
Real result: the changes are discarded and the previous state is restored.
How to reproduce: login and go to https://admin.dev.buerokratt.ee/training/training/stories and try to edit a story. Then after saving, check again for the changes.
Pic:

BUG - when trying to update existing story, it gives Error status code 406

PR to fix above: https://github.com/buerokratt/Training-Module/pull/405

Whenever you change something inside a Rasa Story and press "Save" it give you 409 error code

According to @KasparMinn this task was previously moved to "ATR" due to deployment errors. No development done or needed.

Gives an error code of 300 when I make changes to an existing Rasa story

From terminal it seems, DSL fails with a step:
Error executing DSL: rasa/stories/update
Caused by: ee.buerokratt.ruuter.service.exception.StepExecutionException: Error executing: deleteStory
Caused by: java.lang.NullPointerException: null


cannot connect?

Hi,
great project i really like it
i did exactly what you say in the tutorial
i got this problem
any help

OK, I just clone this old project and found the error.
In sharedConstants.js, I let an old IP address hardcoded, my bad 😞
To play locally, replace the SOCKET_ADDR by localhost:
var constant = {

  SERVER_PORT:              4242,
  SOCKET_PORT:              1337,
  // SOCKET_ADDR:              'http://<IP_ADDRESS>',
  SOCKET_ADDR:              'http://localhost',

If you want to play with friends on different PC, set the server IP in SOCKET_ADDR.
Have fun ! Now I will make few games too 😆  ...

@benVigie
thanks a lot :D thats work pretty good but the game is hard wow
i want to see the sunset effect 🗡

HA HA HA, good luck, I'm barely reach 15 now :stuck_out_tongue_closed_eyes: !


frontend: Use DetailsGrid for Node

@ joaquimrocha extraction of first commit.

@joaquimrocha extraction of first commit.


NOT ABLE TO GET EMAILS OF THE USER on resolve for LoginSocialLinkedin

pass scope props down to the LoginSocialLinkedin component, and then config the respective scope it on your LinkedIn app at https://www.linkedin.com/developers

Got same issue even after setting scope which is configured in LinkedIn App


az storage fs file list --exclude-dir breaks with --show-next-marker

Describe the bug
Command Name
az storage fs file list
Errors:
The command failed with an unexpected error. Here is the traceback:
'dict' object has no attribute 'is_directory'
Traceback (most recent call last):
  File "/usr/local/Cellar/azure-cli/2.24.2/libexec/lib/python3.8/site-packages/knack/cli.py", line 231, in invoke
    cmd_result = self.invocation.execute(args)
  File "/usr/local/Cellar/azure-cli/2.24.2/libexec/lib/python3.8/site-packages/azure/cli/core/commands/__init__.py", line 657, in execute
    raise ex
  File "/usr/local/Cellar/azure-cli/2.24.2/libexec/lib/python3.8/site-packages/azure/cli/core/commands/__init__.py", line 720, in _run_jobs_serially
    results.append(self._run_job(expanded_arg, cmd_copy))
  File "/usr/local/Cellar/azure-cli/2.24.2/libexec/lib/python3.8/site-packages/azure/cli/core/commands/__init__.py", line 712, in _run_job
    return cmd_copy.exception_handler(ex)
  File "/usr/local/Cellar/azure-cli/2.24.2/libexec/lib/python3.8/site-packages/azure/cli/command_modules/storage/__init__.py", line 352, in new_handler
    raise ex
  File "/usr/local/Cellar/azure-cli/2.24.2/libexec/lib/python3.8/site-packages/azure/cli/core/commands/__init__.py", line 691, in _run_job
    result = cmd_copy(params)
  File "/usr/local/Cellar/azure-cli/2.24.2/libexec/lib/python3.8/site-packages/azure/cli/core/commands/__init__.py", line 328, in __call__
    return self.handler(*args, **kwargs)
  File "/usr/local/Cellar/azure-cli/2.24.2/libexec/lib/python3.8/site-packages/azure/cli/core/commands/command_operation.py", line 121, in handler
    return op(**command_args)
  File "/usr/local/Cellar/azure-cli/2.24.2/libexec/lib/python3.8/site-packages/azure/cli/command_modules/storage/operations/fs_file.py", line 88, in list_fs_files
    return list(f for f in result if not f.is_directory)
  File "/usr/local/Cellar/azure-cli/2.24.2/libexec/lib/python3.8/site-packages/azure/cli/command_modules/storage/operations/fs_file.py", line 88, in <genexpr>
    return list(f for f in result if not f.is_directory)
AttributeError: 'dict' object has no attribute 'is_directory'

To Reproduce:
Steps to reproduce the behavior. Note that argument values have been redacted, as they may contain sensitive information.

az storage fs file list --file-system {} --account-name {} --subscription {} --exclude-dir --show-next-marker

Expected Behavior
Should return files list as normal without crashing.
Environment Summary
macOS-10.15.7-x86_64-i386-64bit
Python 3.8.10
Installer: HOMEBREW

azure-cli 2.24.2

Extensions:
datafactory 0.3.0
databricks 0.7.2
storage-preview 0.7.3

Additional Context
The design of including the marker where data goes seems broken.  It breaks all kinds of things downstream trying to process this data.  Is there any reason fs file list can't use --continuation-token like (most of...) the rest of the API, and return a top-level object with the data in one key and the token in another?

storage


NEXT-8309 - Add address to customer selection

1. Why is this change necessary?
When you search for a customer it can happen that a customer has multiple accounts but with different addresses. By adding the address below the customer name it makes it more clear.
2. What does this change do, exactly?
It displays the customer defaultBillingAddress below the customer and company name.
3. Describe each step to reproduce the issue or behaviour.
Go to Orders - Overview  and click 'Add order'. In the new page you can search for a customer. In the result list the customer info is displayed with the billingAddress info.
4. Please link to the relevant issues (if any).
https://issues.shopware.com/issues/NEXT-8309
5. Checklist

[x] I have written tests and verified that they fail without my change
[x] I have squashed any insignificant commits
[x] I have created a changelog file with all necessary information about my changes
[x] I have written or adjusted the documentation according to my changes
[x] This change has comments for package types, values, functions, and non-obvious lines of code
[x] I have read the contribution requirements and fulfil them.

Could you provide a screen shot of your change and ask the design if it is okay?

Can someone of @shopwareBoostDay/shopware-design check if this layout is ok? I've based it on the zip that was in the original issue.

Looks good @belendel Thanks 👍🏻


metrics: break out local backend into metrics/local

Which problem is this PR solving?

Applications using jaeger-client-go pull in the local backend although it is unused
and more importantly, they also depend on the unmaintained
https://github.com/codahale/hdrhistogram
This can raise red flags when trying to use jaeger-client-go in organizations
were dependencies are closely scrutinized.

This PR does not remove the dependency on hdrhistogram and thus
does not solve #32.

Short description of the changes

Now the local backend is in a new metrics/local package that is not
pulled in via the client API. Beware that this an API break because
"metrics" no longer has the same functions.

To minimize the API change, GetKey() is kept in "metrics" because it
doesn't depend on the local backend.

To break a dependency cycle (metrics -> local -> metrics),
test_metrics.go has to be in a metrics_test package and do black-box
testing. This in turn made it necessary to export initMetrics as part
of the metrics API. It was renamed to InitWithError and documented
accordingly to emphasize that it has the same functionality and only
differs in the return value.
Unfortunately the logic is now backwards compared to other packages
(regexp.Compile returns an error, regexp.MustCompile panics), but
preserving API compatibility with older releases is more important.

Technically, this constitutes a breaking change that requires a major rev.
Would it be better to just replace codahale with "github.com/VividCortex/gohistogram" used in go-kit?
https://github.com/go-kit/kit/blob/master/metrics/generic/generic.go#L13

VividCortex/gohistogram looks like a better alternative, but I still don't like to pull it in when it's not needed.
Perhaps use it as as a short-term solution and then split out the local backend as done in this PR? But I don't have time for this now.
Regarding this PR: golint suggests to rename local.LocalBackend. Shall I make that change?

I just created #47. My suggestion is:

Maybe it should be explicitly in testutils, since the functions there already depend on the LocalBackend. Perhaps a better name is metricstest.

@yurishkuro I've renamed the package as you suggested and the tests now pass cleanly.

are you saying that all of "testutils" should be moved to "metricstest"?

if you look at what's currently in testutils, there are only two functions that are used for testing and they both take LocalFactory as an argument. So it makes sense to move them to metricstest. They can even be converted into methods of LocalFactory.

@yurishkuro can we get this merged? It's been open for a while.

Hi, I have a big backlog of things, but I will get to this one at some point.


Further refine and describe eo:constellation

Split from a discussion in #282.
I still don't really understand what the eo:constellation field should contain. How do I determine what to add there? We should clarify what this field is about, better describe it and maybe give rules and more examples.
An nice write-up from @matthewhanson in #282:

I'm not completely sold on this field either.
One of the most obvious use cases is Planet's Doves, since they are meant to operate together to get daily global coverage. A single Dove might have a unique identifier, the instrument is the same on all of them (but maybe not, perhaps some have NIR bands and others do not), but they all operate as a constellation.
With MODIS we have 2 platforms (Aqua, Terra) with the same instrument (MODIS). Does it help to tie the two platforms together as a constellation?
For VIIRS there will be multiple sats, all carrying the same VIIRS instrument.
For Landsat there are multiple platforms: Landsat-7, Landsat-8, which have different instruments (although 5 and 7 have the same ETM+ instrument). Is it helpful to be able to search the constellation of all Landsat sats regardless of platform or instrument? Maybe.
For Sentinel there are 2 platforms, soon to be 3, all with the same instrument....sort of. There actually are slight differences in some of the spectral band edges for at least a couple of the bands between the MSI on 2A and the MSI on 2B. So these maybe should be two different instruments. In which case it would be useful to search across all the Sentinel-2 platforms and eo:constellation would be a good way to do that.

For me this makes sense when you have the same instrument in distinct satellites with similar orbital characteristics and arranged in a way to improve the temporal resolution for acquisitions with the same (or very near) spectral/spatial characteristics. Sentinel 2 A/B and RapidEye are the examples that come to my mind.

Great, @fredliporace . Could you come up with a good description for the field? And a recommendation how to "construct" the value of the field?

@m-mohr will do. Since the milestone for this is 0.7 I'll work on that after completing the CBERS repository migration to 0.6.
For future reference this is how ESA refers to Sentinel-2 as a constellation of two satellites.

@fredliporace The milestone was set by me more or less arbitarily, but now that we are heading for a 0.6 RC2, we could also improve it in that milestone. It's up to you.

This was actually tackled in 0.6. Now we need to check whether this is suitable and further refine in 0.7 if required.

Re-reading what I wrote in #282  I think there are enough examples where the platform and instrument might vary but you want to group them together, and this is likely to be more common with more cubesats getting launched.
I'm going to close this, feel free to reopen if you think this needs further discussion.


[Add] refine slack url

Describe your changes :
If it is "http://user-slack.com/" when entering the Slack URL in the config, it is not redirected to the openmetadata entity page.
Because ""http://user-slack.com//service.db.table" slush enters twice.
The reason why the slush enters twice is as follows.

https://github.com/open-metadata/OpenMetadata/blob/main/catalog-rest-service/src/main/java/org/openmetadata/catalog/slack/SlackWebhookEventPublisher.java#L213
https://github.com/open-metadata/OpenMetadata/blob/main/catalog-rest-service/src/main/java/org/openmetadata/catalog/slack/SlackWebhookEventPublisher.java#L244

I suggest adding the logic to refine the Slack URL so that the redirect can be processed normally no matter how the user enters the Slack URL.

Type of change :

[x] Bug fix
[x] Improvement
[x] New feature
[x] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[x] Documentation

Frontend Preview (Screenshots) :
For frontend related change, please link screenshots of your changes preview! Optional for backend related changes.

Checklist:

[x] I have read the CONTRIBUTING document.
[x] I have performed a self-review of my own.
[x] I have tagged my reviewers below.
[ ] I have commented on my code, particularly in hard-to-understand areas.
[x] My changes generate no new warnings.
[ ] I have added tests that prove my fix is effective or that my feature works.
[x] All new and existing tests passed.

Reviewers
@sureshms @harshach

Thanks @joswlv for handling this.


ERROR - number of step { does not tally with with }

hello the error is occurring: ERROR - number of step {does not tally with with}
this is part of my code:
total = count('//*[@class="mr9 "]')
dump Data,PDF to file.csv
if total greater than or equals to 1
  for n from 1 to total
    click (//*[@class="mr9 "])[`n`]
    wait 5
    read (//tr[@class="expansive"]//td[4])[`n`] to data
    click (//*[@class="mr9 "]/..//*[@class="noClick"]//input[`n`])[3]
    wait 5
    popup saveAsFile.jsf
      click PDF.png
      wait 5
      keyboard [ctrl]w
    py begin
    import glob
    print(glob.glob("/home/rpa/Downloads/tagui/flows/samples/*.PDF")[0])
    py finish
    wait 1
    line = [data, py_result]
    write `csv_row(line)` to file.csv
wait 5
dom window.history.back()

Hi Marcelo! I can replicate. When I remove the block of code py begin .. py finish it works. Will check more.

While figuring out more on this, can you try below to see if it works for you?
Below block can be runnable by me, the change I made is use py step directly instead of py begin and finish.
total = count('//*[@class="mr9 "]')
dump Data,PDF to file.csv
if total greater than or equals to 1
  for n from 1 to total
    click (//*[@class="mr9 "])[`n`]
    wait 5
    read (//tr[@class="expansive"]//td[4])[`n`] to data
    click (//*[@class="mr9 "]/..//*[@class="noClick"]//input[`n`])[3]
    wait 5
    popup saveAsFile.jsf
      click PDF.png
      wait 5
      keyboard [ctrl]w
    py import glob
    py print(glob.glob("/home/rpa/Downloads/tagui/flows/samples/*.PDF")[0])
    wait 1
    line = [data, py_result]
    write `csv_row(line)` to file.csv
wait 5
dom window.history.back()

hi @kensoh it worked !
would there be another more practical way to search for the path of the last downloaded file?
thanks !

Hi Marcelo, if you meant just the folder name, it would be in the flow_path variable. If you want the full filename you can try something like below using run step to use the OS commands to return what you need.
for windows
run cmd /c dir parameters *.PDF
echo `run_result`

for macos/linux
run ls parameters *.PDF
echo `run_result`

Note that the working folder for run step is in tagui/src folder.

Hi Ken
here my code
    py import glob, os
    py list_of_files = glob.glob("/home/rpa/Downloads/tagui/flows/samples/*.PDF")
    py latest_file = max(list_of_files, key=os.path.getctime)
    py print(latest_file)

thanks

Using Python seems like the most straightforward haha.
TagUI has the fs module inherited from PhantomJS, but the list() does not sort by file date -
https://phantomjs.org/api/fs/method/list.html
Following on mac will return the filename of the latest file created. But I'll prefer the Python method than this.
run ls -lt
echo `run_result.split('\n')[1].split(' ')[run_result.split('\n')[1].split(' ').length-1]

Above commit seems to solve the problem by handling nested code blocks correctly. You can download the latest copy of TagUI with this fix and unzip to overwrite your existing installation (please drag the folders under tagui\src to overwrite your existing installation) - https://github.com/kelaberetiv/TagUI/archive/master.zip
In the next release, this fix will become part of the packaged zip files. Thanks Marcelo for spotting and reporting this bug!!

Closing issue, change included in latest packaged release - https://github.com/kelaberetiv/TagUI/releases/tag/v6.46.0


Remove 'xinclude' Namespace in examples

As a consequence of the migration the xinclude namespace now seems to be added to many of the examples. This should be removed.
See, for example:
https://github.com/music-encoding/guidelines/blob/07501b123480dd0a5f621b885eb6b6dd9e5b7167/_includes/dev/examples/cmn/cmn-sample099.xml

Could you double check the status in the master branch?

Do you mean the v3 folder? It's not there. What's the difference?

No, I mean the same file in the master branch: https://github.com/music-encoding/guidelines/blob/master/_includes/dev/examples/cmn/cmn-sample099.xml
We actually do not use develop. We should probably drop it for now, and just have one whenever we are going through a development phase that needs one.