Issue when trying to connect to postgres cluster

When running the version nightly-20171010 and trying to connect to a postgres cluster, the following error is presented:
Waiting for postgres...
Postgres is ready
[2017-11-09 17:57:14 +0000] [1] [INFO] Starting gunicorn 19.6.0
[2017-11-09 17:57:14 +0000] [1] [INFO] Listening at: http://<IP_ADDRESS>:5000 (1)
[2017-11-09 17:57:14 +0000] [1] [INFO] Using worker: gevent
[2017-11-09 17:57:14 +0000] [16] [INFO] Booting worker with pid: 16
[2017-11-09 17:57:15 +0000] [16] [ERROR] Exception in worker process
Traceback (most recent call last):
  File "/usr/local/lib/python3.6/site-packages/SQLAlchemy-1.1.14-py3.6-linux-x86_64.egg/sqlalchemy/pool.py", line 1122, in _do_get
    return self._pool.get(wait, self._timeout)
  File "/usr/local/lib/python3.6/site-packages/SQLAlchemy-1.1.14-py3.6-linux-x86_64.egg/sqlalchemy/util/queue.py", line 145, in get
    raise Empty
sqlalchemy.util.queue.Empty

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.6/site-packages/py_postgresql-1.2.1-py3.6-linux-x86_64.egg/postgresql/driver/pq3.py", line 2427, in connect
    self._establish()
  File "/usr/local/lib/python3.6/site-packages/py_postgresql-1.2.1-py3.6-linux-x86_64.egg/postgresql/driver/pq3.py", line 2553, in _establish
    self.typio.raise_client_error(could_not_connect, creator = self, cause = exc)
  File "/usr/local/lib/python3.6/site-packages/py_postgresql-1.2.1-py3.6-linux-x86_64.egg/postgresql/driver/pq3.py", line 514, in raise_client_error
    raise client_error
postgresql.exceptions.ClientCannotConnectError: could not establish connection to server
  CODE: 08001
  LOCATION: CLIENT
CONNECTION: [failed]
  failures[0]:
    SSL socket('<IP_ADDRESS>', 5432)
    Traceback (most recent call last):
      File "/usr/local/lib/python3.6/site-packages/SQLAlchemy-1.1.14-py3.6-linux-x86_64.egg/sqlalchemy/pool.py", line 1122, in _do_get
        return self._pool.get(wait, self._timeout)
      File "/usr/local/lib/python3.6/site-packages/SQLAlchemy-1.1.14-py3.6-linux-x86_64.egg/sqlalchemy/util/queue.py", line 145, in get
        raise Empty
    sqlalchemy.util.queue.Empty

    During handling of the above exception, another exception occurred:

    Traceback (most recent call last):
      File "/usr/local/lib/python3.6/site-packages/py_postgresql-1.2.1-py3.6-linux-x86_64.egg/postgresql/protocol/client3.py", line 184, in connect
        self.socket = self.socket_factory.secure(self.socket)
      File "/usr/local/lib/python3.6/site-packages/py_postgresql-1.2.1-py3.6-linux-x86_64.egg/postgresql/python/socket.py", line 56, in secure
        return ssl.wrap_socket(socket, **self.socket_secure)
      File "/usr/local/lib/python3.6/site-packages/gevent-1.1.1-py3.6-linux-x86_64.egg/gevent/_ssl3.py", line 576, in wrap_socket
        ciphers=ciphers)
      File "/usr/local/lib/python3.6/site-packages/gevent-1.1.1-py3.6-linux-x86_64.egg/gevent/_ssl3.py", line 126, in __init__
        self._context.verify_mode = cert_reqs
      File "/usr/local/lib/python3.6/ssl.py", line 485, in verify_mode
        super(SSLContext, SSLContext).verify_mode.__set__(self, value)
      File "/usr/local/lib/python3.6/ssl.py", line 485, in verify_mode
        super(SSLContext, SSLContext).verify_mode.__set__(self, value)
      File "/usr/local/lib/python3.6/ssl.py", line 485, in verify_mode
        super(SSLContext, SSLContext).verify_mode.__set__(self, value)
      [Previous line repeated 300 more times]
    RecursionError: maximum recursion depth exceeded

    The above exception was the direct cause of the following exception:

    postgresql.exceptions.InsecurityError: SSL negotiation caused exception
      CODE: --SEC
      LOCATION: CLIENT
CONNECTOR: [Host] pq://postgres:***@postgres:5432
  category: None
DRIVER: postgresql.driver.pq3.Driver

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.6/site-packages/SQLAlchemy-1.1.14-py3.6-linux-x86_64.egg/sqlalchemy/engine/base.py", line 2147, in _wrap_pool_connect
    return fn()
  File "/usr/local/lib/python3.6/site-packages/SQLAlchemy-1.1.14-py3.6-linux-x86_64.egg/sqlalchemy/pool.py", line 387, in connect
    return _ConnectionFairy._checkout(self)
  File "/usr/local/lib/python3.6/site-packages/SQLAlchemy-1.1.14-py3.6-linux-x86_64.egg/sqlalchemy/pool.py", line 766, in _checkout
    fairy = _ConnectionRecord.checkout(pool)
  File "/usr/local/lib/python3.6/site-packages/SQLAlchemy-1.1.14-py3.6-linux-x86_64.egg/sqlalchemy/pool.py", line 516, in checkout
    rec = pool._do_get()
  File "/usr/local/lib/python3.6/site-packages/SQLAlchemy-1.1.14-py3.6-linux-x86_64.egg/sqlalchemy/pool.py", line 1138, in _do_get
    self._dec_overflow()
  File "/usr/local/lib/python3.6/site-packages/SQLAlchemy-1.1.14-py3.6-linux-x86_64.egg/sqlalchemy/util/langhelpers.py", line 66, in __exit__
    compat.reraise(exc_type, exc_value, exc_tb)
  File "/usr/local/lib/python3.6/site-packages/SQLAlchemy-1.1.14-py3.6-linux-x86_64.egg/sqlalchemy/util/compat.py", line 187, in reraise
    raise value
  File "/usr/local/lib/python3.6/site-packages/SQLAlchemy-1.1.14-py3.6-linux-x86_64.egg/sqlalchemy/pool.py", line 1135, in _do_get
    return self._create_connection()
  File "/usr/local/lib/python3.6/site-packages/SQLAlchemy-1.1.14-py3.6-linux-x86_64.egg/sqlalchemy/pool.py", line 333, in _create_connection
    return _ConnectionRecord(self)
  File "/usr/local/lib/python3.6/site-packages/SQLAlchemy-1.1.14-py3.6-linux-x86_64.egg/sqlalchemy/pool.py", line 461, in __init__
    self.__connect(first_connect_check=True)
  File "/usr/local/lib/python3.6/site-packages/SQLAlchemy-1.1.14-py3.6-linux-x86_64.egg/sqlalchemy/pool.py", line 651, in __connect
    connection = pool._invoke_creator(self)
  File "/usr/local/lib/python3.6/site-packages/SQLAlchemy-1.1.14-py3.6-linux-x86_64.egg/sqlalchemy/engine/strategies.py", line 105, in connect
    return dialect.connect(*cargs, **cparams)
  File "/usr/local/lib/python3.6/site-packages/SQLAlchemy-1.1.14-py3.6-linux-x86_64.egg/sqlalchemy/engine/default.py", line 393, in connect
    return self.dbapi.connect(*cargs, **cparams)
  File "/usr/local/lib/python3.6/site-packages/py_postgresql-1.2.1-py3.6-linux-x86_64.egg/postgresql/driver/dbapi20.py", line 409, in connect
    return driver.connect(**params)
  File "/usr/local/lib/python3.6/site-packages/py_postgresql-1.2.1-py3.6-linux-x86_64.egg/postgresql/driver/pq3.py", line 3037, in connect
    c.connect()
  File "/usr/local/lib/python3.6/site-packages/py_postgresql-1.2.1-py3.6-linux-x86_64.egg/postgresql/driver/dbapi20.py", line 354, in connect
    super().connect(*args, **kw)
  File "/usr/local/lib/python3.6/site-packages/py_postgresql-1.2.1-py3.6-linux-x86_64.egg/postgresql/driver/pq3.py", line 2430, in connect
    self.close()
  File "/usr/local/lib/python3.6/site-packages/py_postgresql-1.2.1-py3.6-linux-x86_64.egg/postgresql/driver/dbapi20.py", line 363, in close
    creator = self
postgresql.exceptions.Error: connection already closed
  LOCATION: CLIENT
CONNECTION: [failed]
  failures[0]:
    SSL socket('<IP_ADDRESS>', 5432)
    Traceback (most recent call last):
      File "/usr/local/lib/python3.6/site-packages/SQLAlchemy-1.1.14-py3.6-linux-x86_64.egg/sqlalchemy/pool.py", line 1122, in _do_get
        return self._pool.get(wait, self._timeout)
      File "/usr/local/lib/python3.6/site-packages/SQLAlchemy-1.1.14-py3.6-linux-x86_64.egg/sqlalchemy/util/queue.py", line 145, in get
        raise Empty
    sqlalchemy.util.queue.Empty

    During handling of the above exception, another exception occurred:

    Traceback (most recent call last):
      File "/usr/local/lib/python3.6/site-packages/py_postgresql-1.2.1-py3.6-linux-x86_64.egg/postgresql/protocol/client3.py", line 184, in connect
        self.socket = self.socket_factory.secure(self.socket)
      File "/usr/local/lib/python3.6/site-packages/py_postgresql-1.2.1-py3.6-linux-x86_64.egg/postgresql/python/socket.py", line 56, in secure
        return ssl.wrap_socket(socket, **self.socket_secure)
      File "/usr/local/lib/python3.6/site-packages/gevent-1.1.1-py3.6-linux-x86_64.egg/gevent/_ssl3.py", line 576, in wrap_socket
        ciphers=ciphers)
      File "/usr/local/lib/python3.6/site-packages/gevent-1.1.1-py3.6-linux-x86_64.egg/gevent/_ssl3.py", line 126, in __init__
        self._context.verify_mode = cert_reqs
      File "/usr/local/lib/python3.6/ssl.py", line 485, in verify_mode
        super(SSLContext, SSLContext).verify_mode.__set__(self, value)
      File "/usr/local/lib/python3.6/ssl.py", line 485, in verify_mode
        super(SSLContext, SSLContext).verify_mode.__set__(self, value)
      File "/usr/local/lib/python3.6/ssl.py", line 485, in verify_mode
        super(SSLContext, SSLContext).verify_mode.__set__(self, value)
      [Previous line repeated 300 more times]
    RecursionError: maximum recursion depth exceeded

    The above exception was the direct cause of the following exception:

    postgresql.exceptions.InsecurityError: SSL negotiation caused exception
      CODE: --SEC
      LOCATION: CLIENT
CONNECTOR: [Host] pq://postgres:***@postgres:5432
  category: None
DRIVER: postgresql.driver.pq3.Driver

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/local/lib/python3.6/site-packages/gunicorn-19.6.0-py3.6.egg/gunicorn/arbiter.py", line 557, in spawn_worker
    worker.init_process()
  File "/usr/local/lib/python3.6/site-packages/gunicorn-19.6.0-py3.6.egg/gunicorn/workers/ggevent.py", line 190, in init_process
    super(GeventWorker, self).init_process()
  File "/usr/local/lib/python3.6/site-packages/gunicorn-19.6.0-py3.6.egg/gunicorn/workers/base.py", line 126, in init_process
    self.load_wsgi()
  File "/usr/local/lib/python3.6/site-packages/gunicorn-19.6.0-py3.6.egg/gunicorn/workers/base.py", line 136, in load_wsgi
    self.wsgi = self.app.wsgi()
  File "/usr/local/lib/python3.6/site-packages/gunicorn-19.6.0-py3.6.egg/gunicorn/app/base.py", line 67, in wsgi
    self.callable = self.load()
  File "/usr/local/lib/python3.6/site-packages/gunicorn-19.6.0-py3.6.egg/gunicorn/app/wsgiapp.py", line 65, in load
    return self.load_wsgiapp()
  File "/usr/local/lib/python3.6/site-packages/gunicorn-19.6.0-py3.6.egg/gunicorn/app/wsgiapp.py", line 52, in load_wsgiapp
    return util.import_app(self.app_uri)
  File "/usr/local/lib/python3.6/site-packages/gunicorn-19.6.0-py3.6.egg/gunicorn/util.py", line 357, in import_app
    __import__(module)
  File "/usr/src/app/auth/webRoutes.py", line 15, in <module>
    import database.CRUDController as crud
  File "/usr/src/app/auth/database/CRUDController.py", line 9, in <module>
    from database.Models import Permission, User, Group, PermissionEnum
  File "/usr/src/app/auth/database/Models.py", line 10, in <module>
    from flaskAlchemyInit import app, db
  File "/usr/src/app/auth/flaskAlchemyInit.py", line 32, in <module>
    db.create_all()
  File "/usr/local/lib/python3.6/site-packages/Flask_SQLAlchemy-2.3.0-py3.6.egg/flask_sqlalchemy/__init__.py", line 946, in create_all
    self._execute_for_all_tables(app, bind, 'create_all')
  File "/usr/local/lib/python3.6/site-packages/Flask_SQLAlchemy-2.3.0-py3.6.egg/flask_sqlalchemy/__init__.py", line 938, in _execute_for_all_tables
    op(bind=self.get_engine(app, bind), **extra)
  File "/usr/local/lib/python3.6/site-packages/SQLAlchemy-1.1.14-py3.6-linux-x86_64.egg/sqlalchemy/sql/schema.py", line 3949, in create_all
    tables=tables)
  File "/usr/local/lib/python3.6/site-packages/SQLAlchemy-1.1.14-py3.6-linux-x86_64.egg/sqlalchemy/engine/base.py", line 1928, in _run_visitor
    with self._optional_conn_ctx_manager(connection) as conn:
  File "/usr/local/lib/python3.6/contextlib.py", line 81, in __enter__
    return next(self.gen)
  File "/usr/local/lib/python3.6/site-packages/SQLAlchemy-1.1.14-py3.6-linux-x86_64.egg/sqlalchemy/engine/base.py", line 1921, in _optional_conn_ctx_manager
    with self.contextual_connect() as conn:
  File "/usr/local/lib/python3.6/site-packages/SQLAlchemy-1.1.14-py3.6-linux-x86_64.egg/sqlalchemy/engine/base.py", line 2112, in contextual_connect
    self._wrap_pool_connect(self.pool.connect, None),
  File "/usr/local/lib/python3.6/site-packages/SQLAlchemy-1.1.14-py3.6-linux-x86_64.egg/sqlalchemy/engine/base.py", line 2151, in _wrap_pool_connect
    e, dialect, self)
  File "/usr/local/lib/python3.6/site-packages/SQLAlchemy-1.1.14-py3.6-linux-x86_64.egg/sqlalchemy/engine/base.py", line 1465, in _handle_dbapi_exception_noconnection
    exc_info
  File "/usr/local/lib/python3.6/site-packages/SQLAlchemy-1.1.14-py3.6-linux-x86_64.egg/sqlalchemy/util/compat.py", line 203, in raise_from_cause
    reraise(type(exception), exception, tb=exc_tb, cause=cause)
  File "/usr/local/lib/python3.6/site-packages/SQLAlchemy-1.1.14-py3.6-linux-x86_64.egg/sqlalchemy/util/compat.py", line 186, in reraise
    raise value.with_traceback(tb)
  File "/usr/local/lib/python3.6/site-packages/SQLAlchemy-1.1.14-py3.6-linux-x86_64.egg/sqlalchemy/engine/base.py", line 2147, in _wrap_pool_connect
    return fn()
  File "/usr/local/lib/python3.6/site-packages/SQLAlchemy-1.1.14-py3.6-linux-x86_64.egg/sqlalchemy/pool.py", line 387, in connect
    return _ConnectionFairy._checkout(self)
  File "/usr/local/lib/python3.6/site-packages/SQLAlchemy-1.1.14-py3.6-linux-x86_64.egg/sqlalchemy/pool.py", line 766, in _checkout
    fairy = _ConnectionRecord.checkout(pool)
  File "/usr/local/lib/python3.6/site-packages/SQLAlchemy-1.1.14-py3.6-linux-x86_64.egg/sqlalchemy/pool.py", line 516, in checkout
    rec = pool._do_get()
  File "/usr/local/lib/python3.6/site-packages/SQLAlchemy-1.1.14-py3.6-linux-x86_64.egg/sqlalchemy/pool.py", line 1138, in _do_get
    self._dec_overflow()
  File "/usr/local/lib/python3.6/site-packages/SQLAlchemy-1.1.14-py3.6-linux-x86_64.egg/sqlalchemy/util/langhelpers.py", line 66, in __exit__
    compat.reraise(exc_type, exc_value, exc_tb)
  File "/usr/local/lib/python3.6/site-packages/SQLAlchemy-1.1.14-py3.6-linux-x86_64.egg/sqlalchemy/util/compat.py", line 187, in reraise
    raise value
  File "/usr/local/lib/python3.6/site-packages/SQLAlchemy-1.1.14-py3.6-linux-x86_64.egg/sqlalchemy/pool.py", line 1135, in _do_get
    return self._create_connection()
  File "/usr/local/lib/python3.6/site-packages/SQLAlchemy-1.1.14-py3.6-linux-x86_64.egg/sqlalchemy/pool.py", line 333, in _create_connection
    return _ConnectionRecord(self)
  File "/usr/local/lib/python3.6/site-packages/SQLAlchemy-1.1.14-py3.6-linux-x86_64.egg/sqlalchemy/pool.py", line 461, in __init__
    self.__connect(first_connect_check=True)
  File "/usr/local/lib/python3.6/site-packages/SQLAlchemy-1.1.14-py3.6-linux-x86_64.egg/sqlalchemy/pool.py", line 651, in __connect
    connection = pool._invoke_creator(self)
  File "/usr/local/lib/python3.6/site-packages/SQLAlchemy-1.1.14-py3.6-linux-x86_64.egg/sqlalchemy/engine/strategies.py", line 105, in connect
    return dialect.connect(*cargs, **cparams)
  File "/usr/local/lib/python3.6/site-packages/SQLAlchemy-1.1.14-py3.6-linux-x86_64.egg/sqlalchemy/engine/default.py", line 393, in connect
    return self.dbapi.connect(*cargs, **cparams)
  File "/usr/local/lib/python3.6/site-packages/py_postgresql-1.2.1-py3.6-linux-x86_64.egg/postgresql/driver/dbapi20.py", line 409, in connect
    return driver.connect(**params)
  File "/usr/local/lib/python3.6/site-packages/py_postgresql-1.2.1-py3.6-linux-x86_64.egg/postgresql/driver/pq3.py", line 3037, in connect
    c.connect()
  File "/usr/local/lib/python3.6/site-packages/py_postgresql-1.2.1-py3.6-linux-x86_64.egg/postgresql/driver/dbapi20.py", line 354, in connect
    super().connect(*args, **kw)
  File "/usr/local/lib/python3.6/site-packages/py_postgresql-1.2.1-py3.6-linux-x86_64.egg/postgresql/driver/pq3.py", line 2430, in connect
    self.close()
  File "/usr/local/lib/python3.6/site-packages/py_postgresql-1.2.1-py3.6-linux-x86_64.egg/postgresql/driver/dbapi20.py", line 363, in close
    creator = self
sqlalchemy.exc.DBAPIError: (postgresql.exceptions.Error) connection already closed
  LOCATION: CLIENT
CONNECTION: [failed]
  failures[0]:
    SSL socket('<IP_ADDRESS>', 5432)
    Traceback (most recent call last):
      File "/usr/local/lib/python3.6/site-packages/SQLAlchemy-1.1.14-py3.6-linux-x86_64.egg/sqlalchemy/pool.py", line 1122, in _do_get
        return self._pool.get(wait, self._timeout)
      File "/usr/local/lib/python3.6/site-packages/SQLAlchemy-1.1.14-py3.6-linux-x86_64.egg/sqlalchemy/util/queue.py", line 145, in get
        raise Empty
    sqlalchemy.util.queue.Empty

    During handling of the above exception, another exception occurred:

    Traceback (most recent call last):
      File "/usr/local/lib/python3.6/site-packages/py_postgresql-1.2.1-py3.6-linux-x86_64.egg/postgresql/protocol/client3.py", line 184, in connect
        self.socket = self.socket_factory.secure(self.socket)
      File "/usr/local/lib/python3.6/site-packages/py_postgresql-1.2.1-py3.6-linux-x86_64.egg/postgresql/python/socket.py", line 56, in secure
        return ssl.wrap_socket(socket, **self.socket_secure)
      File "/usr/local/lib/python3.6/site-packages/gevent-1.1.1-py3.6-linux-x86_64.egg/gevent/_ssl3.py", line 576, in wrap_socket
        ciphers=ciphers)
      File "/usr/local/lib/python3.6/site-packages/gevent-1.1.1-py3.6-linux-x86_64.egg/gevent/_ssl3.py", line 126, in __init__
        self._context.verify_mode = cert_reqs
      File "/usr/local/lib/python3.6/ssl.py", line 485, in verify_mode
        super(SSLContext, SSLContext).verify_mode.__set__(self, value)
      File "/usr/local/lib/python3.6/ssl.py", line 485, in verify_mode
        super(SSLContext, SSLContext).verify_mode.__set__(self, value)
      File "/usr/local/lib/python3.6/ssl.py", line 485, in verify_mode
        super(SSLContext, SSLContext).verify_mode.__set__(self, value)
      [Previous line repeated 300 more times]
    RecursionError: maximum recursion depth exceeded

    The above exception was the direct cause of the following exception:

    postgresql.exceptions.InsecurityError: SSL negotiation caused exception
      CODE: --SEC
      LOCATION: CLIENT
CONNECTOR: [Host] pq://postgres:***@postgres:5432
  category: None
DRIVER: postgresql.driver.pq3.Driver
[2017-11-09 17:57:15 +0000] [16] [INFO] Worker exiting (pid: 16)
[2017-11-09 17:57:15 +0000] [1] [INFO] Shutting down: Master
[2017-11-09 17:57:15 +0000] [1] [INFO] Reason: Worker failed to boot.

outdated gevent is to blame: https://github.com/gevent/gevent/issues/903
Update gevent to 1.2.2 fix the problem

Great... got to fix this requirements on new container builds.


Add support for Italian (DEIT) (WIP, do not merge yet)

Trying to add DEIT support.
This is what happens:
tree texts
texts
├── GLOSSIKA-DEIT-F1-EBK.pdf
├── GLOSSIKA-DEIT-F2-EBK.pdf
└── GLOSSIKA-DEIT-F3-EBK.pdf

python3 ./split_text.py
Checking 'texts/GLOSSIKA-DEIT-F2-EBK.pdf'
Traceback (most recent call last):
  File "./split_text.py", line 336, in <module>
    split()
  File "./split_text.py", line 332, in split
    split_text('', glob.glob(location), 'output', '')
  File "./split_text.py", line 327, in split_text
    extract_sentences(book, book_info, language_pair, series, callback)
  File "./split_text.py", line 278, in extract_sentences
    sentence.sentence = phrase
UnboundLocalError: local variable 'sentence' referenced before assignment

Any idea? :-)

One thing i see is that your languages:
		'languages': ['EN', 'CA'],
...are incorrect ;)
I also think that the ACCEPTED_PDFS variable isn't used anymore. I was using that for the web version but i changed how i was handling that. But that won't cause any problems anyway. Could you check if changing the languages to DE and IT works?
In the extract_sentences function, we have:
		if type == info['languages'][0]:
			sentence_num += 1
			sentences.append([])

		# if it's the first type, it's a new sentence
		if type in info['languages']:
			sentence = Sentence(index=sentence_num)
			sentences[-1].append(sentence)```

If the languages are incorrect, it's never going to create the sentence variable.

Aiii!
That was some vim fuckup :-)
At some point I had it to DE IT, bug another issue, and now this.
Anyways, it works now! Thanks! Ready to be merged :-)


UI rework with Bootstrap

Description:
A quick sketch for a new UI with Bootstrap that has a navigation bar for easier and faster navigation between pages.
How to test:
Check all pages and forms.

No module named bootstrap4 even after doing
sudo docker-compose down
sudo docker-compose run web python manage.py  makemigrations
sudo docker-compose run web python manage.py migrate
sudo docker-compose up

Yeah, I'm also checking this out. Got the same errors.

No module named bootstrap4 even after doing
sudo docker-compose down
sudo docker-compose run web python manage.py makemigrations
sudo docker-compose run web python manage.py migrate
sudo docker-compose up

I got it working locally with python -m pip install bootstrap4

No module named bootstrap4 even after doing
sudo docker-compose down
sudo docker-compose run web python manage.py makemigrations
sudo docker-compose run web python manage.py migrate
sudo docker-compose up

I got it working locally with python -m pip install bootstrap4

This has to be implemened somehow to the docker as well

You have to rebuild images because of the new dependencies with sudo docker-compose up --build

No module named bootstrap4 even after doing
sudo docker-compose down
sudo docker-compose run web python manage.py makemigrations
sudo docker-compose run web python manage.py migrate
sudo docker-compose up

I got it working locally with python -m pip install bootstrap4

Did pip install -r requirements.txt not work?

all pages and forms seem to work
updating the README building instructions


run applySceneUpdates on bg thread

I'm trying to migrate EM to use 0.2.2 and need to apply scene updates to change the camera when the user starts navigation mode (https://github.com/mapzen/eraser-map/blob/tangram-2.2/app/src/main/kotlin/com/mapzen/erasermap/controller/MainActivity.kt#L1129). When applySceneUpdates is called, we are also changing the tilt/zoom, etc. Currently, applying the scene updates breaks the animation of these properties.

It would be nice if we load all cameras and have an API to switch between them directly.
Bonus Points for smooth perspective interpolation :D
http://answers.unity3d.com/questions/583316/fluent-animation-from-orthographic-to-perspective.html
http://answers.unity3d.com/storage/attachments/18735-cameraprojectionchangedeux.txt

@tallytalwar could it be the problem that applySceneUpdates blocks rendering longer than the animation is supposed to run? (blocked due to synchronized methods in MapController)

@hjanetzek That was also my initial thought.
One small thing which can be done on the EM side is to make sure the sceneUpdate is called first and animations are performed later?

I also agree it will be nice to have all cameras in the scene and set camera using an explicit API call to activate a specific camera, instead of using sceneUpdate on it.

We will add back a more direct camera API but are waiting to decide on the exact interface, especially as regards to how much similarity we want to GMaps. @blair1618 is working on this. Using the lower level scene update is the generic way to do it for now.

@hjanetzek has control over this now. Already has some experimentation going on in a test branch.
We should however discuss more on the ideas put in this issue on cameras for a refactor later on.

Hey @sarahlensing, I've tested scene updates with view animations (started before and after applyUpdates) and it works properly here: https://github.com/tangrams/tangram-android-demos/commit/fa933ef1df3d2f055a0f759af41d8a1a9c6800c4
Allowing to apply Scene updates on a background thread seems to be a quite large task - for which I would also wait for @blair1618 to discuss as he worked on this recently.

@hjanetzek Thanks for the update, in the meantime I'll take another look at the EraserMap code and see if sceneUpdates are called before other animations as @tallytalwar suggests doing.

Loading new scenes and updating scenes should indeed be performed on a background thread, ideally. There's nothing technically preventing this, but as Hannes mentioned it's not a small task. A better solution for now is to re-arrange the animation calls, as others have mentioned.

https://github.com/tangrams/tangram-es/pull/776


Pagespeed cannot be built using the way described in the docs

The documentation for compiling pagespeed reads:

To compile mod_pagespeed, run the commands below. You should to omit the AR arguments for latest-beta.
cd ~/mod_pagespeed/src
make AR.host=pwd/build/wrappers/ar.sh AR.target=pwd/build/wrappers/ar.sh BUILDTYPE=Release

Yet there is no folder 'src' and there is no 'ar.sh' in the whole project, even after completing all the previous steps.
So how do I build pagespeed from source correctly?

From https://www.modpagespeed.com/doc/build_mod_pagespeed_from_source#checkout states that for 1.12 and up the build procedure looks like:
  git clone -b latest-stable --recursive https://github.com/apache/incubator-pagespeed-mod.git
  cd mod_pagespeed
  python build/gyp_chromium --depth=.
  make BUILDTYPE=Release mod_pagespeed_test pagespeed_automatic_test

Hope that helps!

Thanks for the quick reply! On my machine, the .so is not generated when I run
make BUILDTYPE=Release mod_pagespeed_test pagespeed_automatic_test
However, it is generated when I just run
make BUILDTYPE=Release (which is equal to make BUILDTYPE=Release all)
Perhaps that should be clarified in the manual.


Multi module example?

I am trying out this library this morning and struggling to make it work for a multi-module example.
I'm thinking contribute each features NavHost with dagger multi-bindings.
Any tips?

Can you please provide details on what you are trying to achieve and what exactly is failing?
I'm not sure I understand your problem.

I'm just here to report that I've had no trouble getting this to work with multiple modules. Both where it's the destination composable content, and where it's an entire NavHost that's in the dependency module.
I really don't understand why you would need multi-bindings for compose navigation in general. The NavHost is a composable function, not an object. You shouldn't be trying to inject a nav controller anywhere either.

Glad to hear that you figured it out in the end.


ida extractor doesn't correctly ignore stack cookie nzxor features

@mike-hunhoff  i'm going to assign you since you built the IDA bb_stack_cookie_registers routine. feel free to unassign if you won't be able to get to this.

relevant function is 0x46D534 in mimikatz.exe / 5f66b82558ca92e54e77f216ef4c066c


Dev into master merge

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Warning: This coverage report may be inaccurate.
This pull request's base commit is no longer the HEAD commit of its target branch. This means it includes changes from outside the original pull request, including, potentially, unrelated coverage changes.

For more information on this, see Tracking coverage changes with pull request builds.
To avoid this issue with future PRs, see these Recommended CI Configurations.
For a quick fix, rebase this PR at GitHub. Your next report should be accurate.

Details

76 of 76 (100.0%)  changed or added relevant lines in 11 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+1.7%) to 100.0%

Totals

Change from base Build<PHONE_NUMBER>:
1.7%

Covered Lines:
615

Relevant Lines:
615

💛  - Coveralls


add the object detection app demo, use onnxruntime engine

this app is based on yolov5 OnnxRuntime format model， and need to hybrid engine for OnnxRuntime
this app is developed on Windows System, when pushing to the repository， some files are changed without properly test

I will check in the onnx model and the synset file to djl resource S3 bucket


🌐 Spanish translation of project-generation.md

Giving continuity to #1218.
In this pull request I made the spanish translation of project-generation.md
@mariacamilagl , I will wait for revision

Hello there! Unfortunately, this file changed in the original, the content is now different, so this translation is no longer applicable. Given that I'll close it, but thanks for the effort! :coffee:


Kernel function type leads to stack overflow in VM

The test language/cyclic_type_variable_test causes a stack overflow in the VM.
I can't see anything wrong with the .dill file I generate.
    frame #39452: 0x00000001003b7111 dart`dart::TypeArguments::ComputeHash(this=<unavailable>) const + 305 at object.cc:4630
    frame #39453: 0x00000001004028c8 dart`dart::Type::ComputeHash() const [inlined] dart::TypeArguments::Hash(this=0x0000000107042cc0) const + 91 at object.h:8964
    frame #39454: 0x000000010040286d dart`dart::Type::ComputeHash(this=<unavailable>) const + 381 at object.cc:17494
    frame #39455: 0x0000000100421d65 dart`dart::Type::Hash(this=0x0000000107042c60) const + 85 at object.h:8914
    frame #39456: 0x0000000100402a83 dart`dart::Type::ComputeHash(this=<unavailable>) const + 915 at object.cc:17503
    frame #39457: 0x0000000100421d65 dart`dart::Type::Hash(this=0x0000000107042c00) const + 85 at object.h:8914
    frame #39458: 0x00000001003b7111 dart`dart::TypeArguments::ComputeHash(this=<unavailable>) const + 305 at object.cc:4630
    frame #39459: 0x00000001004028c8 dart`dart::Type::ComputeHash() const [inlined] dart::TypeArguments::Hash(this=0x00000001070429d0) const + 91 at object.h:8964
    frame #39460: 0x000000010040286d dart`dart::Type::ComputeHash(this=<unavailable>) const + 381 at object.cc:17494
    frame #39461: 0x0000000100421d65 dart`dart::Type::Hash(this=0x0000000107042970) const + 85 at object.h:8914
    frame #39462: 0x0000000100402a83 dart`dart::Type::ComputeHash(this=<unavailable>) const + 915 at object.cc:17503
    frame #39463: 0x0000000100421d65 dart`dart::Type::Hash(this=0x0000000107042910) const + 85 at object.h:8914
    frame #39464: 0x00000001003b7111 dart`dart::TypeArguments::ComputeHash(this=<unavailable>) const + 305 at object.cc:4630
    frame #39465: 0x00000001004028c8 dart`dart::Type::ComputeHash() const [inlined] dart::TypeArguments::Hash(this=0x00000001070428e0) const + 91 at object.h:8964
    frame #39466: 0x000000010040286d dart`dart::Type::ComputeHash(this=<unavailable>) const + 381 at object.cc:17494
    frame #39467: 0x0000000100421d65 dart`dart::Type::Hash(this=0x0000000107042880) const + 85 at object.h:8914
    frame #39468: 0x0000000100402a83 dart`dart::Type::ComputeHash(this=<unavailable>) const + 915 at object.cc:17503
    frame #39469: 0x0000000100421d65 dart`dart::Type::Hash(this=0x0000000107042820) const + 85 at object.h:8914

@crelier have you seen this before? The problematic function type is:
typedef void funcType<
    T
extends T //# 01: static type warning
    >(T arg);

@peter-ahe-google I have seen bugs before where we have trouble processing recursive (or cyclic) types in the VM, but I am not aware of any current bug. This particular test (language/cyclic_type_variable_test) passes on the VM. So I am not sure I understand your question.

@crelier The test crashes when running from a .dill file (aka Kernel), and I just wanted to run it by you in case it would be obvious to you what the problem is.

@peter-ahe-google After some investigation, I noticed that the kernel frontend is dropping the information that a function type is actually a typedef. This is an information that the VM relies on at times, because some uses of function types can only be expressed as typedef, e.g. as an upper bound.
I will send a cl shortly that makes the VM more robust in this regard.

I submitted a cl making things a bit more robust, but the VM will not be able to properly process recursive types where the typedef information is lost. Certain recursive types can only be expressed because we have typdefs. The Kernel front-end should try to keep the function types in their typedef form rather than extract and use their signature types, Examples of such recursive types are those in language/cyclic_variable_test.dart

Sorry, I meant these tests in tests/language:
cyclic_type_variable_test/01
cyclic_type_variable_test/02
cyclic_type_variable_test/03
cyclic_type_variable_test/04
cyclic_type_variable_test/none

Thank you, @crelier! I'm glad I ran this by you. We need typedefs for other reasons (modular compilation and mirrors), and your information may help me come up with a short-term work around.

Now that I took a look at CL<PHONE_NUMBER>, it seems like you've fixed this issue. Is it still the case that there are problems with recursive function types?

There are still issues with types that are non-contractive, or rather with the detection of such types. See for example issue #29357. I am not sure that the fix you are referring to was correct. I am working on it, so stay tuned.

BTW, the cyclic_type_variable_test s all pass with generic method support enabled, both with and without --reify-generic-methods. Is there anything left to do for this task?

Thank you @sjindel-google


⚠ ClamAV has degraded performance

In 120d24f, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 50 ms

Resolved: ClamAV performance has improved in 19b69df.


remove boost dependency

Download all boost code, but only use boost-spsc-queue for overlaybd; It makes me feel frustrated when make clean force next time download boost again...
For cross platform boost/lockfree/spsc_queue.hpp is the best choice, but now in overlaybd we can try other way
Linux kernel kfifo.h is a totally spsc-queue, I code it refer to linux-kernel-v2.6.32,and I success to replace boost with kfifo
I test my code by https://github.com/alpc62/lock-free-queue, when make check, unit-test seem very well
But I cannot test the performance, my computer CPU only have 2-core, cannot run benchmark for the queue :(
I hope your team have a look, try to benchmark it

LGTM. It performs a little faster than the older.

LGTM. It performs a little faster than the older.

Nice :)  Now I close this PR, after make commit shorter then I will create a new one


no issue

For the current steamvr you only need to run the following command to run your code
~/.steam/ubuntu12_32/steam-runtime/run.sh devel/lib/vive_ros/vive_node
thanks a lot for this package. we are using it to compare our custom vive tracking with steamVR

thanks.


Much Better Than Built In Magento Functionality. Just One Error

I am using this fantastic swatch extension - It's dramatically better than the built in magento function.
The only problem is that I'm using the porto theme that has a sticky add to cart option and I'm getting the error below in the console:-
Uncaught TypeError: Product.ConfigurableSwatches is not a constructor
How would I fix this? If it's possible.
Thanks again for coding this extension!

Try disabling the code color swatches functionality.
If that does not work...well...

My extension does not conflict with your theme.
Your theme conflicts with my extension.

@tzyganu
Sorry - I meant to report back and forgot.
It was a theme conflict. Once I removed the themes support for built in magento swatches the conflict vanished.
Thanks again for this extension. It's loads better than built in magento one :+1:

@johnnywokka
I also am getting this error using the RWD theme. I have magento's built-in swatches functionality disabled but I still see the error.
How were you able to resolve this?


Revert unintended consequence of string node representation update

Description
Related to the Property Graph Index retriever's as_retriever method that allows users to print the string representation of a property graph node or relationship.
I think it makes sense to revert the unintended consequence of string node representation update per #14707, where the properties dict is coerced to a string and appended to the node name prior to printing the string representation. This caused the string representation of the node to return a garbled mess of name + properties that make it hard to read when running the following code in the property graph index retriever:
retriever = index.as_retriever(
    include_text=False,  # include source text in returned nodes, default True
)

nodes = retriever.retrieve("What happened at Interleaf and Viaweb?")

for node in nodes:
    print(node.text)

The suggested revert to the change made by @logan-markewich now returns the correct results, pretty-printed as follows:
Paul Graham -> WORKED_ON -> Viaweb
Viaweb -> PART_OF -> Yahoo
Paul Graham -> WORKED_ON -> Technology companies
Paul Graham -> WORKED_ON -> World Wide Web

New Package?
Did I fill in the tool.llamahub section in the pyproject.toml and provide a detailed README.md for my new integration or package?

[ ] Yes
[x] No

Version Bump?
Did I bump the version in the pyproject.toml file of the package I am updating? (Except for the llama-index-core package)

[ ] Yes
[x] No

Type of Change
Please delete options that are not relevant.

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

How Has This Been Tested?
Tested on Kùzu, Neo4j and FalkorDB by rerunning the example notebooks end-to-end, and nothing breaks.

[ ] Added new unit/integration tests
[ ] Added new notebook (that tests end-to-end)
[x] I stared at the code and made sure it makes sense

Suggested Checklist:

[x] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] I have added Google Colab support for the newly added notebooks.
[x] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[x] I ran make format; make lint to appease the lint gods

@prrao87 I'm pretty sure i made this change because people wanted the node properties in the string representation lol
Instead of removing, there should be a toggle (likely on the retriever)

Interesting the call to {triplet[n]!s} per this line is hardcoded tho, so I'm wondering what a good toggle could be - would it be in the subretriever, or at this upper level in types.py?

@prrao87 maybe something roughly like
.as_retriever(include_properties=True)

if self.include_properties
  node_text = f"{node} ({node.properties}) -> ..."
else:
  node_text = f"{node} -> ..."

@prrao87 maybe something roughly like
.as_retriever(include_properties=True)

if self.include_properties
  node_text = f"{node} ({node.properties}) -> ..."
else:
  node_text = f"{node} -> ..."

 It applies to the subretriever but I think I need to have the same kwarg in all the retrievers that are being subclassed for the PropertyGraphIndex 😅.

@prrao87 yea, there's the base class and 5 other retrievers, not too bad :)

yea, there's the base class and 5 other retrievers, not too bad :)

Now that you confirmed this, yes, not too bad at all 😅. Fixing now.

Done - I left the default value as False because this way, none of the existing example notebooks that call as_retriever would need to be rerun. If users want, they can always call the retriever this way:
retriever = index.as_retriever(include_properties=True)


Game select OK button

Describe the issue
Ok button on game select screen doesn't do anything. Pressing the button on the game is what selects it.
Expected behavior
Either select game before starting or get rid of button
Screenshots

implemented the OK button functionality to ensure the game only starts after selecting a conjecture and clicking OK. The selected conjecture is highlighted, and the OK button is disabled until a selection is made. Added feedback message for the selected conjecture. This resolves the issue where the game would start immediately upon selection without requiring the OK confirmation.


Add IN operator

Added support to IN operator. Ability check inclusion in lists & strings.

Coverage remained the same at 0.0% when pulling a71daca0a763c8eba884a95794425010615852b7 on arpeely:support-in-operator into 96dee232bf6006642e9ea576e48242177773e947 on Axiacore:master.

I would also like to have this feature. Could someone from the team review and approve it?

Thank you @danysirota!
I just added your code to the new release: https://pypi.org/project/py-expression-eval/0.3.10/


Only able to connect to flash one of two bulbs

Okay, got a strange one. Today I purchased two 'Brilliant Smart LED Bulbs' a generic Tuya bulb. They connect to the Tuya app when added manually.
Bulb one took many attempts to flash, but eventually did (I don't know why on the seventh attempt it worked, but it did). Unfortunately, no such luck with the second bulb.
It appears that tuya-convert is making a connection because once start_flash is begun and the bulb is in pairing mode, after about 10 seconds it goes out of pairing mode. So something is happening.
I have tried all the tricks I have read - connecting to vtrust-flash with a different device, pairing the device with the app and then removing it/resetting factory settings, starting vtrust-flash first and then putting the bulb into pairing mode. No good and as i said, the first bulb worked on the sixth or seventh attempt without doing anything different.
I have attached both web and wifi logs.
smarthack-web.log
smarthack-wifi.log

Can you please verify that the MQTT service is running?

I just knocked out 2 Merkury bulbs in under 10 min.
I power on the bulb, while it's flashing, I run ./start_flashing. Within 5 seconds, it is paired and updating.  If it doesn't pair and start within 15 seconds. Run ./stop_flashing.  The ./start_flashing again.

Can you please verify that the MQTT service is running?

Yes, it appears to be. I've attached the MQTT log.
smarthack-mqtt.log

Run ./stop_flashing. The ./start_flashing again.

I will give that a go next.

@eflemingtra Try the following command with the device connected to your network.
nc -u -l -k -p 6666
If you see JSON output, this is good! If not, try
nc -u -l -k -p 6667
If you see random output, this is bad. Let us know!

Unfortunately I can't experiment on the second bulb, I appear to have bricked it perhaps. Again randomly, Tuya-Convert connected and it appeared to be backing up the default firmware, however, it seemed to hang and despite eventually saying the firmware was updated, turning on the bulb now results in a flash of blue color and then nothing.

Closing due to inactivity, feel free to open a new issue if you have any concerns


Need help on creating List cells using data validation

Hi,
I am creating Excel with 2 sheets, One to create a List of values and the other to point values to display drop-down.
But calling get_data_validations() returns None. When I try to read validations from the existing Excel template and write to output a new file, my output workbook does not have any validations. Looks like they are not getting copied/cloned, could you please check and do the needful? I am attaching excel template for reference

My requirement is to read that excel, fill in actual data, and create an output file. But because of missing data validations, my output file is getting corrupted, and opening in recovery mode does not have any validations.
Excel file
lov-template.xlsx

@BharathIO
Thank you for contacting us.
We will address this in the next version of the software.

Thanks for the update @MathNya , may i know when can i expect next version with the above fixes?

@BharathIO
We will probably be able to release it around the end of this month.

Sure. I will be waiting for that feature. Hope it takes care of defined named ranges for Lists read/write.

I see we are facing issue when named range is creating like below.
=OFFSET(LOV!$A$1,1,0,COUNTIF(LOV!$A:$A,"<>"&"")-1,1)

Fyi, this is what i observed.

@BharathIO
We have released 1.2.1 which fixes this problem.
Please check it out.

I am still facing this issue after upgrading to 1.2.2. could you please check
Output file
Employees (8).xlsx

Input file
lov-template-input.xlsx
Output file
1_lov_copy.xlsx
let template_path = "../lov-template-input.xlsx";
    let output_path = "../1_lov_copy.xlsx";
    let book = umya_spreadsheet::reader::xlsx::read(template_path).unwrap();

    let path = std::path::Path::new(output_path);
    let _ = umya_spreadsheet::writer::xlsx::write(&book, path);
    println!("File cloned successfully at: {}", output_path);

Hi @MathNya, did you get a chance to check above issue? Please correct if i am doing anything wrong

@BharathIO
Sorry for the delay in contacting you.
I will check the situation.

@BharathIO
We were able to correct the cause of the error.
Version 1.2.3 was released. Please check it out.

Thanks, @MathNya, it is working as expected now.

Excel for reference
Employees (11).xlsx


[Umbrella] Support sink to Redis

Describe the proposal
Support sink redis
Redis: The open source, in-memory data store used by millions of developers as a database, cache, streaming engine, and message broker.
Task list

[x] #7060
[x] #7211
[x] #7238
[x] #7240
[x] #7242
[x] #7244
[x] #7245
[x] #7305
[x] #7306

InLong Component
InLong Manager, InLong Dashboard, InLong Sort, InLong Audit, Other for not specified component
Are you willing to submit PR?

[X] Yes, I am willing to submit a PR!

Code of Conduct

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

all sub-tasks finished, close it.


fixing errors and not returning reasons

rejecting promises rather than throwing errors.

Contributor License Agreement adherence:

[x] This Contribution is under the terms of Individual Contributor License Agreements (and also Corporate Contributor License Agreements to the extent applicable) appearing in the Apereo CLA roster.

It does handle the promise correctly on throw, I just went this route because the error bubbles up and you get a stack trace in the console. It seemed overly ugly for a pretty inconsequential failure.

It does handle the promise correctly on throw, I just went this route because the error bubbles up and you get a stack trace in the console. It seemed overly ugly for a pretty inconsequential failure.

I'm not quite sure I follow what you are saying.
Let me rephrase to what I interpret that as:

throw/Promise handles the exception as expected.
However the Error is causing the resulting value to bubble up into a console.error.
This is a handler for legacy code and should not be shown as a system/application exception.

Is that an accurate understanding? :thought_balloon:

pretty much.  I don't like errors propagating to the console if they're really just part of the normal control flow.  But that's just superficial preference by me, if it's a big deal, we can go back to throw.

throw or $q.resolve could work equally well. :man_shrugging:
I would lean toward throw only because it better aligns with lint rule. :white_check_mark:

I don't like errors propagating to the console if they're really just part of the normal control flow.

I hear ya on that. :+1:
async await in ES8 will give some really clean ways to handle early exit.
In the mean time custom error types could allow to customized when logs are shown and at what level.
Or lowering the log level works as well. :slightly_smiling_face:

aside: Coveralls not reporting status is an issue with coveralls not with this PR.


Code Sandbox for Experimental Docs

Just wondering if this is something the experimental docs could use. I’ve been recently looking through the experimental docs and I really love how innovative they are. And I kinda want to contribute a bit and was wondering if you would mind using code sandbox for showing code examples that are editable.

That's a great idea! If you want to work on the docs locally just make sure to install the mintlify cli

That's a great idea! If you want to work on the docs locally just make sure to install the mintlify cli

This might just be me but I can’t seem to figure out how to add custom dependencies to mintlify. I’ve tried searching it up but I don’t know where to add dependencies. I even tried to import from a cdn but that didn’t work either.

What are you trying to add? Sandpack?
I'm told dependency management is coming very soon to mintlify. In the meantime I have been using iframes that point to storybook and we could also add other endpoints if needed, like apps/playground.
I think you can also include a script.js file https://mintlify.com/docs/integrations/custom/js


Fix bug when deleting scorm folder

Use configured disk instead of hardcoded 'scorm'

hey sir , u can help  me to use this package i dont find any doc or example implement this  and thank you

There's an update for this package.


syslog-agent uses a lot of CPU when pointed at an invalid aggregate drain

When there is significant log volume and an aggregate drain cannot be connected to, the syslog agent will use a lot of CPU trying to establish a connection.

We believe that this issue has been fixed in 5.3.8; closing.


Uncaught TypeError: Cannot read property 'getURI' of undefined

[Enter steps to reproduce:]

...
...

Atom: 1.45.0 x64
Electron: 4.2.7
OS: Unknown Windows version
Thrown From: Atom Core
Stack Trace
Uncaught TypeError: Cannot read property 'getURI' of undefined
At C:\Users\ruvik\AppData\Local\atom\app-1.45.0\resources\app\static\<embedded>:11

TypeError: Cannot read property 'getURI' of undefined
    at items.find.t (~/AppData/Local/atom/app-1.45.0/resources/app/static/<embedded>:11:463353)
    at Array.find (<anonymous>)
    at Pane.itemForURI (~/AppData/Local/atom/app-1.45.0/resources/app/static/<embedded>:11:463324)
    at t (~/AppData/Local/atom/app-1.45.0/resources/app/static/<embedded>:11:444966)
    at Function.findIndex (~/AppData/Local/atom/app-1.45.0/resources/app/static/<embedded>:11:1198987)
    at b.find.b.detect (~/AppData/Local/atom/app-1.45.0/resources/app/static/<embedded>:11:1195706)
    at PaneContainer.paneForURI (~/AppData/Local/atom/app-1.45.0/resources/app/static/<embedded>:11:444937)
    at Dock.paneForURI (~/AppData/Local/atom/app-1.45.0/resources/app/static/<embedded>:11:476868)
    at getPaneContainers.find.t (~/AppData/Local/atom/app-1.45.0/resources/app/static/<embedded>:11:436132)
    at Array.find (<anonymous>)
    at Workspace.paneContainerForURI (~/AppData/Local/atom/app-1.45.0/resources/app/static/<embedded>:11:436122)
    at TreeViewPackage.createOrDestroyTreeViewIfNeeded (~/AppData/Local/atom/app-1.45.0/resources/app/static/<embedded>:11:1180268)
    at Function.simpleDispatch (~/AppData/Local/atom/app-1.45.0/resources/app/static/<embedded>:11:1214120)
    at Emitter.emit (~/AppData/Local/atom/app-1.45.0/resources/app/static/<embedded>:11:1215561)
    at Project.addPath (~/AppData/Local/atom/app-1.45.0/resources/app/static/<embedded>:11:410954)
    at confirm.n (~/AppData/Local/atom/app-1.45.0/resources/app/static/<embedded>:1:749075)
    at CallbacksRegistry.apply (~/AppData/Local/atom/app-1.45.0/resources/electron.asar/renderer/callbacks-registry.js:47:25)
    at handleMessage (~/AppData/Local/atom/app-1.45.0/resources/electron.asar/renderer/api/remote.js:285:21)
    at EventEmitter.ipcRenderer.on.args (~/AppData/Local/atom/app-1.45.0/resources/electron.asar/renderer/api/remote.js:275:7)
    at EventEmitter.emit (events.js:182:13)

Commands
     -1:34.7.0 ftp-remote-edit:open-file (atom-workspace.workspace.scrollbars-visible-always.theme-one-dark-syntax.theme-one-dark-ui)
     -1:32.6.0 editor:fold-at-indent-level-1 (input.hidden-input)

Non-Core Packages
ftp-remote-edit 0.18.0

Thanks for reaching out!
We require the template to be filled out on all new issues and pull requests. We do this so that we can be certain we have all the information we need to address your submission efficiently. This allows the maintainers to spend more time fixing bugs, implementing enhancements, and reviewing and merging pull requests.
Thanks for understanding and meeting us half way 😀


Empty list from API should return [] instead of null

It would be nice to always return valid json with a 200 of Content-Type: application/json. This makes parsing easier 😃

May we have concrete examples of where you saw the issue ?

/api/v1/orgs/workspace/services

Closing this as the route doesn't even exist anymore


[LOC] Back-Translation "try...キャッチ...finally ステートメント"→"Try…Catch…Finally ステートメント"

🛑 IMPORTANT: You can get your feedback addressed faster if you use the comment section for the article in which you encountered a problem (if available).

Link to article:
Tell us where exactly a problem occurs.
"https://docs.microsoft.com/ja-jp/dotnet/api/system.codedom.codetrycatchfinallystatement?view=netframework-4.8"
Problem:
What's wrong with the article?
[LOC] Back-Translation "try...キャッチ...finally ステートメント"→"Try…Catch…Finally ステートメント"

I've opened a PR in dotnet/dotnet-api-docs repo to fix this issue.

Thanks @Youssef1313. It should take a few days until the localized content is updated. /cc @JasonCard

@hyoshioka0128 Thank you for reporting this issue and it's now fixed.
@Youssef1313 Thank you for addressing this issue with the PR!
@mairaw And thank you for letting me know :)


Resolve zustand warnings.

Pull Request for Memfree
Description
Please include a summary of the changes made in this pull request. Explain the purpose of the changes and any relevant context.
Related Issue
If this pull request addresses an issue, please link to it here. For example:
#87  Fix zustand warning in frontend/lib/store/local-limit.ts.
Changes Made

[ ] Added new feature
[ ] Fixed a bug
[ ] Updated documentation
[x] Other (please specify)
Resolved zustand warning

How to Test
Please describe the steps to test the changes made in this pull request. Include any specific commands or configurations needed.
Screenshots (if applicable)
If your changes include visual modifications, please add screenshots to help reviewers understand the changes.
Checklist

[x] I have read the contributing guidelines
[x] I have followed the code style guidelines
[x] My code is tested and works as expected
[x] I have updated the documentation (if necessary)

Additional Information
Please provide any additional information that may be helpful for the reviewers.

I have resolved the conflict but it is asking me to create a new pull request from the same branch.

@Riyan-Mo you only need to push the new commit to zustand-warnings branch, don't need to create a new PR.


[prim,fpv] Tweak the prim_alert_rxtx_async tests

These tests weren't actually doing anything because we were binding them into a nonexistent module (found by looking at formal coverage).
Fix that and fix most of the broken properties. Annoyingly, AlertCheck0_A still doesn't quite work. This property is supposed to be putting an upper bound on the time between someone asking the alert sender to do something and the alert receiver registering that it has happened. I suspect this just needs a small tweak (since the non-async version is working fine!). But it seems a bit fiddly and I'm hoping someone who understands this primitive better than me can help...
I think this change is worth taking either way because it enables a load of testing that we weren't previously running. And most of it passes!

No change in the new version except that I've squashed together some commits (thanks, @vogelpi for suggesting it)


Why not in to app

i was login use admin secret
after that not launch app. why?

Run php artisan serve from the root of the project.

yes i did it but until now , i cant login to app


Update dcepolicies

Proposed changes

[ ] updated principal policies for dce based on the feedback

Types of changes

[ ] Bugfix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Refactor (changes to code, which do not change application behavior)

Checklist

[ ] I have filled out this PR template
[ ] I have read the CONTRIBUTING doc
[ ] I have added automated tests that prove my fix is effective or that my feature works
[ ] I have added necessary documentation (README.md, inline comments, etc.)
[ ] I have updated the CHANGELOG.md under a ## next release, with a short summary of my changes

Relevant Links

Further comments

/azp run


Add draining feature to asyncio.Queue

This feature adds the ability to drain a Queue. This is useful for cleanup steps, especially in the simple websocket case.
It adds the following things:

(coroutine) drain - waits until the queue is drained, errors on puts, errors on gets once queue is empty
drain_nowait
close - closes queue immediately, errors on all gets and puts

Imagine we have the following code:
import asyncio
q = asyncio.Queue()

async def wait_for_it():
        while True:
            t = await q.get()
            q.task_done()

loop = asyncio.get_event_loop()
asyncio.ensure_future(wait_for_it())

try:
    loop.run_forever()
except KeyboardInterrupt:
    pass

This actually creates a lot of warnings/errors on shutdown, such as
Task was destroyed but it is pending!
task: <Task pending coro=<wait_for_it() running at test.py:6> wait_for=<Future pending cb=[Task._wakeup()]>>
Exception ignored in: <coroutine object wait_for_it at 0x7f594abb7830>
Traceback (most recent call last):
  File "test.py", line 6, in wait_for_it
  File "/usr/lib/python3.5/asyncio/queues.py", line 170, in get
  File "/usr/lib/python3.5/asyncio/futures.py", line 227, in cancel
  File "/usr/lib/python3.5/asyncio/futures.py", line 242, in _schedule_callbacks
  File "/usr/lib/python3.5/asyncio/base_events.py", line 497, in call_soon
  File "/usr/lib/python3.5/asyncio/base_events.py", line 506, in _call_soon
  File "/usr/lib/python3.5/asyncio/base_events.py", line 334, in _check_closed
RuntimeError: Event loop is closed

The fix is
import asyncio

q = asyncio.Queue()

async def wait_for_it():
        while True:
            t = await q.get()
            q.task_done()

loop = asyncio.get_event_loop()
task = loop.create_task(wait_for_it())

try:
    loop.run_forever()
except KeyboardInterrupt:
    pass
finally:
    task.cancel()
    pending = asyncio.Task.all_tasks()
    try:
        loop.run_until_complete(asyncio.gather(*pending))
    except asyncio.CancelledError:
        print('expected')
    loop.close()

which is very unwieldy and not obvious.
Instead I propose a drain feature which gives us the following code
import asyncio

q = asyncio.Queue()

async def wait_for_it():
    try:
        while True:
            t = await q.get()
            q.task_done()
    except asyncio.QueueClosed:
        print('closed')

loop = asyncio.get_event_loop()
asyncio.ensure_future(wait_for_it())
asyncio.ensure_future(wait_for_it())

try:
    loop.run_forever()
except KeyboardInterrupt:
    pass
finally:
    loop.run_until_complete(q.drain())
    loop.close()

which is much cleaner and simple.

This feature would be greatly appreciated.  Currently there are non-obvious ways to deal with graceful shutdown in get-push scenarios, e.g., see this StackOverflow question:
https://stackoverflow.com/questions/35495711/asyncio-graceful-shutdown-for-a-pushing-server
loop.wait_for causes excessive memory usage if the queue is infrequently used (as discussed in Issue 26259 and the recommended solution there of using get_nowait is basically going back to polling which introduces unnecessary latency.  This problem is currently worked-around by add a special "quit" message onto the queue, which you then have to detect inside the coroutine and shut it down.  This is obviously quite ugly.

Definitely very excited to see this idea to escape a few times I have wanted to use queues to handoff some work. I used the less than obvious way (e.g. asyncio.gather(*pending)) that @nhumrich demonstrates and it feels like it may be difficult to recall going forward.

This looks too complicated, and I'm not convinced that this belongs in asyncio rather than in the app.

I agree that the PR includes too much logic but it has an interesting point: what OP called drain_nowait wakes up any ongoing get() coroutine with an exception if the queue is empty.
I think this part could be useful, since I often end up implementing this manually by putting None into the queue to indicate it is not going to get any more item:
    while True:
        item = await queue.get()
        if item is None:
            break
        process(item)

The alternative to this is either to cancel the coroutine that consumes the data, or use asyncio.wait with FIRST_COMPLETED to wait for queue.get() and a stop event simultaneously.
A few weeks ago, I wrote two producer/consumer examples for asyncio.readthedocs.io (one with the None item approach, the other one with the cancelling approach), but I feel those workarounds make the examples more complicated than they should be.

Users of the stdlib queue module have to put a None into the queue as well.
I don't see why that's so difficult.
On Fri, Sep 9, 2016 at 1:28 PM, Vincent Michel<EMAIL_ADDRESS>wrote:

I agree that the PR includes too much logic but it has an interesting
point: what OP called drain_nowait wakes up any ongoing get() coroutine
with an exception if the queue is empty.
I think this part could be useful, since I often end up implementing this
manually by putting None into the queue to indicate it is not going to
get any more item:
while True:
    item = await queue.get()
    if item is None:
        break
    process(item)

The alternative to this is either to cancel the coroutine that consumes
the data, or use asyncio.wait with FIRST_COMPLETED to wait for queue.get()
and a stop event simultaneously.
A few weeks ago, I wrote two producer/consumer examples
https://asyncio.readthedocs.io/en/latest/producer_consumer.html#producer-consumer
for asyncio.readthedocs.io (one with the None item approach, the other
one with the cancelling approach), but I feel those workarounds make the
examples more complicated than they should be.
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/python/asyncio/pull/415#issuecomment-246030327, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ACwrMhtu3DaNS_jrZQf3PqfXqYlzI5tJks5qocFjgaJpZM4J4gMB
.

--
--Guido van Rossum (python.org/~guido)

Putting Nones to the queue has the limitation that the producer has to know how many consumers there are. If the queue is used by zero or one consumers at a time, it works, but 2..n and you have to do something like wrap the Queue.get call with asyncio.as_completed that also waits for an event that gets set when the producer(s) stop.
I had the latter in my app to work around the 2+ consumers situation, but the amount of code changed from one line to ~ a dozen and performance took a dive (probably because of all the tasks created).
Now I have a ClosableQueue Queue subclass with a close method that just sets a QueueClosed exception on all current getters and putters, sets the _finished event and raises the same exception if someone calls any of the instance's methods.
+1 for having such functionality in the stdlib. Unless you control both producers and consumers, you'll end up with hacks (like .put(None)) that may or may not work, or reinventing the wheel.

If you can convince the core devs that the non-asyncio queue.py needs this
feature too we can add it to asyncio.

I started to hesitate thinking my use case is a special unicorn after all and not necessarily something that should be in the standard library, until I just ran into the same .put(None) in the standard library while investigating a separate issue: https://github.com/python/cpython/blob/7b90e3674be86479c51faf872d0b9367c9fc2f96/Lib/concurrent/futures/thread.py#L141
Maybe I'll draft a suggestion after all in a couple of weeks after publishing the library I'm working on now. Or if someone else feels like picking up the ball, there's one good example in the link. Googling/grepping for queue.put(None) may reveal plenty more of these.

I spent some time researching this and came to the conclusion that queue.close() makes sense for multi-processing and for distributed computing, but not so much for threads and asyncio where there isn't much benefit from having multiple-consumers and where we already have other cheap ways to communicate (via a shared active/shutdown variable, via a None message in the message queue itself, via timeouts, or via a secondary command queue that could be used for a variety of restart/shutdown/pause/resume commands to consumer threads).  As far a I can tell, consumer get() code written with a Shutdown exception handler isn't cleaner or faster than equivalent code that checks for None or some other sentinel.

Thanks for your review Raymond!


Merge common code between ALEX_MONAD and ALEX_MONAD_BYTESTRING

@simonmar given in the past seemingly harmless changes to the templates turned out to break consumers of the generated alex parsers; please let's very careful in testing this before so we don't have to schedule in overtime hours for Hackage Trustees to fixup up versions bounds of build-tool-depends all over hackage :-)

@hvr thanks for the heads up. I wasn't aware of the previous problems. What kind of testing would be appropriate?


Move all sass into hackathon_manager namespace

And rename variable-overrides.sass to something more hackathon_manager-specific - like hackathon_manager-overrides.sass maybe
This eliminates the potential for app-specific files to conflict with hackathon manager's files

Closing as the namespace is less important with a standalone app


Bug in roolDice function.

Math.random always return a value less than 1 so it was not possible to have a 6.

 Thanks!


Adding to OpenBSD ports

Do you have any plans on including obsdpkgup to ports?

I would love to make this happen, yes. I've been waiting until I have the index generation into a more... stable state first. Right now I am generating the index file on a machine literally in my basement, and uploading it to a cloud provider. I would like to re-write the index generation script (generate_pkgup_from_mirror.sh) into something more portable (probably write it in Go) so that it can be run on any OS that Go supports (and not just OpenBSD itself). I just haven't found the time recently. I will try to prioritize this now that I know that there is at least one person other than myself and 2 others that are using/potentially interested in the tool.

I would love to make this happen, yes. I've been waiting until I have the index generation into a more... stable state first. Right now I am generating the index file on a machine literally in my basement, and uploading it to a cloud provider. I would like to re-write the index generation script (generate_pkgup_from_mirror.sh) into something more portable (probably write it in Go) so that it can be run on any OS that Go supports (and not just OpenBSD itself). I just haven't found the time recently. I will try to prioritize this now that I know that there is at least one person other than myself and 2 others that are using/potentially interested in the tool.

https://marc.info/?l=openbsd-ports&m=160990739907567&w=2

https://marc.info/?l=openbsd-ports&m=160990739907567&w=2


Save logo as svg

We have manim script that generates video and image of the logo but we need to export it as gif and svg for further usage.
It can be done in the docs/resources/draw_logo.py

Also, the logo should have more lime-like shape like this

instead of

Done...!


Farming station duplicating seeds with upgraded mattock when config turned off + charge item filter not pulling mattock from farming station

I created a system that used Tinker's Construct mattocks with a flux modifier (changes the tools to use RF instead of durability) that would automatically alternate between 2 mattocks and recharge themselves. When the system started to level up the mattocks (Iguana's Tinker's Tweaks automatic level up modifiers) at some point it gave it an upgrade that caused seeds to duplicate 100% of the time (I am banking on it being the luck modifier).
List of modifiers are as follows: http://gyazo.com/7c312b6a6a151ae9ac1affcd0eb99c2f
The second bug I found is that the "charged" item filter does not function within farming stations. I have the system set up to pull the mattocks from the farming station when they have 25% or less charge, swap with the fully charged mattock waiting in a chest and recharge the used mattock. Every part of the system functions except pulling the mattock out of the farming station when below 25% charge. You can see in the above screenshot that the mattock has < 25% charge remaining.
Setup of conduit: http://gyazo.com/6a8a93f3435300a4c47907764aaa54b3
Position of conduit relative to farming station: http://gyazo.com/568074c4cdddb53588a7e8635ee30347
Mode of farming station: http://gyazo.com/b8116b7f779942fd6f48a4ab9ed61368

It seems that it's currently not possible to extract the tools from the farming station.
I'll have a look at that soon.

The issue is that once I allow pulling out tools - existing setups will fail to work. The only way I can think of to solve this would be to add an option in the farming station UI to allow pulling out tools.

Maybe add it as a flag that is only valid when the charge item filter is in a conduit attached to the farming station, since I can't see any other reason to want to pull out hoes or axes from the stations unless they are powered by RF or similar and need re-charging

What about eg TiC tools which can break and then be repaired etc? I don't like this kind of hard coding.

Fair enough. a "mode" on the farming station (as on modes you can configure to faces, like pull and push) that only targets tools could also work. In this way existing setups can continue to function, with people who want to use a setup that recycles tools being satisfied too.
Further information about the other issue I mentioned: I managed to make a 2nd mattock that is exactly the same except it didn't have the luck modifier on it and it didn't give seed drops. Looks like it is the luck modifier (fortune) in TiC that is either communicating with the farming station weirdly and ignoring the config option, or luck on those tools in general

I assume you are getting this issue with magical crops? They have a crappy implementation of getDrops, we are passing them the fortune modifier as expected and they are duping the seeds. Out of my hands.

Oh derp, yeah sorry that totally skipped my mind. I'll send that half of the bug report to Mark


[EventRequest] Codeunit 1254 "Match Bank Pmt. Appl." - OnBeforeMatchBankPayments()

Hello,
We have to replace standard matching code (CU 1255 "Match Bank Payments") with our custom matching algorithm. To achieve this, we need new event in codeunit 1254 "Match Bank Pmt. Appl.":
codeunit 1254 "Match Bank Pmt. Appl."
{
    TableNo = "Bank Acc. Reconciliation";

    trigger OnRun()
    var
        MatchBankPayments: Codeunit "Match Bank Payments";
        // NEW VARIABLES >>>
        IsHandled: Boolean;
        // NEW VARIABLES <<<
    begin
        // NEW CODE >>>
        OnBeforeMatchBankPayments(Rec, IsHandled);
        if IsHandled then
          exit;
        // NEW CODE <<<
        BankAccReconciliationLine.FilterBankRecLines(Rec);
        if BankAccReconciliationLine.FindFirst() then begin
            MatchBankPayments.SetApplyEntries(true);
            MatchBankPayments.Run(BankAccReconciliationLine);
        end;
        OnAfterMatchBankPayments(Rec);
    end;

    ....

    // NEW EVENT >>>
    [IntegrationEvent(false, false)]
    local procedure OnBeforeMatchBankPayments(var BankAccReconciliation: Record "Bank Acc. Reconciliation"; var IsHandled: Boolean)
    begin
    end;
    // NEW EVENT <<<
}

Thank you in advance!
Best regards,
Matjaž

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. We will update this issue with information about availability. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.


Minor touchups

Changes out the deployment and namespace health checks  to use dynamic issue detail generation for things like warning events, anomolies, etc. Still leaves the older workload_next_steps script in there which needs to be deprecated. This does generate more issues, but in theory the issue clustering should handle this. I tested in b-online-boutique for our standard test and it appeared to function well. We will need to test more in t-sandbox to determine if the noise is too much and we need additional noise reduction in the script.

This does also change a few task titles. This was a bit more of an indexing hit than I thought it would be but any workspace pinned to main will recover within an hour.


Add initial contract offerer check

Codecov Report
Patch and project coverage have no change.

Comparison is base (d807d28) 100.00% compared to head (326fb49) 100.00%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files
@@             Coverage Diff             @@
##               1.5     #1054     +/-   ##
===========================================
  Coverage   100.00%   100.00%
===========================================
  Files           46        25     -21
  Lines         2652      1184   -1468
  Branches       396       134    -262
===========================================
- Hits          2652      1184   -1468

Flag
Coverage Δ

foundry
?

production
100.00% <ø> (ø)

reference
?

Flags with carried forward coverage won't be shown. Click here to find out more.
see 40 files with indirect coverage changes
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


How to create file in Storage

A nice project.
I am trying to create file in Storage.
func main() {
        app.Import(&Component{})
        app.Run(&mac.Driver{
                Bundle: mac.Bundle{
                        AppName:     "Demo",
                        ID:          "com.app.demo",
                        Version:     "1",
                        BuildNumber: 1,
                        Background:  true,
                        Icon:        "logo.png",
                        Role:        mac.EditorRole,
                        Server:      true,
                },
                OnRun: func() {
                        if err := os.MkdirAll(app.Storage(), 0600); err != nil {
                                 // err is mkdir /Users/hello/Library/Application Support/goapp/demo-83b9abdxa0512900c9bx5349401x504e: permission denied

$ goapp mac build
$ ./demo or open demo.app
or
$ goapp mac build -sandbox -sign mysignstring
$ open demo.app

Both occur error

BTW, What is the Role?
Thanks.

Hello @txthinking
Could you give me the output of your program?
# Simple build.
goapp mac build -v

# Build with sandbox
goapp mac build -v -sandbox -sign SIGNING_ID

# Run with output:
goapp mac run -v -d

 // err is mkdir /Users/hello/Library/Application Support/goapp/demo-83b9abdxa0512900c9bx5349401x504e: permission denied

You try to override the storage dir. It can't work.
Should use something like:
	if err := os.MkdirAll(app.Storage("DIRNAME"), 0600); err != nil {
				app.Log(err)
			}

or
	if err := os.MkdirAll(filepath.Join(app.Storage(), "DIRNAME"), 0600); err != nil {
				app.Log(err)
			}


flutter attach - > NoSuchMethodError: NoSuchMethodError: The getter 'port' was called on null. Receiver: null Tried calling: port

Steps to Reproduce

...
...
...

Logs

Flutter crash report; please file at https://github.com/flutter/flutter/issues.
command
flutter attach
exception
NoSuchMethodError: NoSuchMethodError: The getter 'port' was called on null.
Receiver: null
Tried calling: port
#0      Object.noSuchMethod (dart:core-patch/object_patch.dart:50:5)
#1      AttachCommand.runCommand (package:flutter_tools/src/commands/attach.dart:219:78)
<asynchronous suspension>
#2      FlutterCommand.verifyThenRunCommand (package:flutter_tools/src/runner/flutter_command.dart:488:18)
#3      _asyncThenWrapperHelper.<anonymous closure> (dart:async-patch/async_patch.dart:77:64)
#4      _rootRunUnary (dart:async/zone.dart:1132:38)
#5      _CustomZone.runUnary (dart:async/zone.dart:1029:19)
#6      _FutureListener.handleValue (dart:async/future_impl.dart:126:18)
#7      Future._propagateToListeners.handleValueCallback (dart:async/future_impl.dart:639:45)
#8      Future._propagateToListeners (dart:async/future_impl.dart:668:32)
#9      Future._complete (dart:async/future_impl.dart:473:7)
#10     _SyncCompleter.complete (dart:async/future_impl.dart:51:12)
#11     _AsyncAwaitCompleter.complete.<anonymous closure> (dart:async-patch/async_patch.dart:33:20)
#12     _rootRun (dart:async/zone.dart:1124:13)
#13     _CustomZone.run (dart:async/zone.dart:1021:19)
#14     _CustomZone.bindCallback.<anonymous closure> (dart:async/zone.dart:947:23)
#15     _microtaskLoop (dart:async/schedule_microtask.dart:41:21)
#16     _startMicrotaskLoop (dart:async/schedule_microtask.dart:50:5)
#17     _runPendingImmediateCallback (dart:isolate-patch/isolate_patch.dart:115:13)
#18     _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:172:5)

flutter doctor
[✓] Flutter (Channel master, v1.5.9-pre.42, on Mac OS X 10.14.4 18E226, locale zh-Hans-CN)
    • Flutter version 1.5.9-pre.42 at /Users/Jentle/flutter
    • Framework revision cbfa4e5483 (5 days ago), 2019-04-26 20:25:02 -0700
    • Engine revision 7f753f8f52
    • Dart version 2.3.0 (build 2.3.0-dev.0.3 c46deebfb6)

[✓] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
    • Android SDK at /Users/Jentle/Library/Android/sdk
    • Android NDK location not configured (optional; useful for native profiling support)
    • Platform android-28, build-tools 28.0.3
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1343-b01)
    • All Android licenses accepted.

[!] iOS toolchain - develop for iOS devices (Xcode 10.2.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 10.2.1, Build version 10E1001
    ✗ Verify that all connected devices have been paired with this computer in Xcode.
      If all devices have been paired, libimobiledevice and ideviceinstaller may require updating.
      To update with Brew, run:
        brew update
        brew uninstall --ignore-dependencies libimobiledevice
        brew uninstall --ignore-dependencies usbmuxd
        brew install --HEAD usbmuxd
        brew unlink usbmuxd
        brew link usbmuxd
        brew install --HEAD libimobiledevice
        brew install ideviceinstaller
    • ios-deploy 1.9.4
    • CocoaPods version 1.7.0.beta.3

[✓] Android Studio (version 3.4)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 35.1.1
    • Dart plugin version 183.6270
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1343-b01)

[✓] VS Code (version 1.33.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 2.25.1

[✓] Connected device (1 available)
    • iPhone Xʀ • 61F35846-7EF9-4CE8-B72E-E5B545E7EDFC • ios • com.apple.CoreSimulator.SimRuntime.iOS-12-2
      (simulator)

! Doctor found issues in 1 category.

I have the same question

I have the same question

I have the same issue
command
flutter attach -d 4A7E74AA-D187-40C1-8623-11F17BCE0579
exception
NoSuchMethodError: NoSuchMethodError: The getter 'port' was called on null.
Receiver: null
Tried calling: port
#0      Object.noSuchMethod (dart:core-patch/object_patch.dart:50:5)
#1      AttachCommand.runCommand (package:flutter_tools/src/commands/attach.dart:219:78)
<asynchronous suspension>
#2      FlutterCommand.verifyThenRunCommand (package:flutter_tools/src/runner/flutter_command.dart:488:18)
#3      _asyncThenWrapperHelper.<anonymous closure> (dart:async-patch/async_patch.dart:77:64)
#4      _rootRunUnary (dart:async/zone.dart:1132:38)
#5      _CustomZone.runUnary (dart:async/zone.dart:1029:19)
#6      _FutureListener.handleValue (dart:async/future_impl.dart:126:18)
#7      Future._propagateToListeners.handleValueCallback (dart:async/future_impl.dart:639:45)
#8      Future._propagateToListeners (dart:async/future_impl.dart:668:32)
#9      Future._complete (dart:async/future_impl.dart:473:7)
#10     _SyncCompleter.complete (dart:async/future_impl.dart:51:12)
#11     _AsyncAwaitCompleter.complete.<anonymous closure> (dart:async-patch/async_patch.dart:33:20)
#12     _rootRun (dart:async/zone.dart:1124:13)
#13     _CustomZone.run (dart:async/zone.dart:1021:19)
#14     _CustomZone.bindCallback.<anonymous closure> (dart:async/zone.dart:947:23)
#15     _microtaskLoop (dart:async/schedule_microtask.dart:41:21)
#16     _startMicrotaskLoop (dart:async/schedule_microtask.dart:50:5)
#17     _runPendingImmediateCallback (dart:isolate-patch/isolate_patch.dart:115:13)
#18     _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:172:5)

flutter doctor
[✓] Flutter (Channel dev, v1.5.8, on Mac OS X 10.14.4 18E226, locale en-GB)
    • Flutter version 1.5.8 at /Users/aleksandrkelbas/flutter
    • Framework revision 0ba67226ee (3 weeks ago), 2019-04-24 17:18:28 -0700
    • Engine revision c63d1cf9c9
    • Dart version 2.3.0 (build 2.3.0-dev.0.1 1f1592edce)

[✓] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
    • Android SDK at /Users/aleksandrkelbas/Library/Android/sdk
    • Android NDK location not configured (optional; useful for native profiling support)
    • Platform android-28, build-tools 28.0.3
    • ANDROID_HOME = /Users/aleksandrkelbas/Library/Android
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1136-b06)
    • All Android licenses accepted.

[✓] iOS toolchain - develop for iOS devices (Xcode 10.2.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 10.2.1, Build version 10E1001
    • ios-deploy 1.9.4
    • CocoaPods version 1.6.1

[!] Android Studio (version 3.2)
    • Android Studio at /Applications/Android Studio.app/Contents
    ✗ Flutter plugin not installed; this adds Flutter specific functionality.
    ✗ Dart plugin not installed; this adds Dart specific functionality.
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1136-b06)

[✓] VS Code (version 1.33.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.0.1

[✓] Connected device (2 available)
    • Alex’s iPhone • ffed4855585ed787031edb1862d82d3236d6a429 • ios • iOS 12.2
    • iPhone Xʀ     • 4A7E74AA-D187-40C1-8623-11F17BCE0579     • ios • com.apple.CoreSimulator.SimRuntime.iOS-12-2 (simulator)

! Doctor found issues in 1 category.

Switching to master branch doesn't help. I get another error when refreshing there: Error 105 received from application: Isolate must be runnable

I have the same issues

I have the same issues

I have the same issue

I have the same issue

Duplicate of #40225. The issue should have been fixed in https://github.com/flutter/flutter/pull/32126 in 1.6.0.
Please report if you encounter it still.


Feature: Hide Repositories

It would be nice to see a feature with which you can hide repositories from your view when visiting the dashboard. That means, that it wouldn't show up in the tabs on the right where all the repositories are listed and new commits/pushes wouldn't show up in the news section of the dashboard. To view these repositories you would have a button somewhere with a checkbox saying view hidden repositories.

Wouldn't that be something like watch/unwatch repo can be already reused?

I just toggled watch/unwatch in the repository I would like to be hidden and noticed:

the dashboard doesn't show the commits anymore, but when I watch again, they obviously don't show up anymore, because they have been kind of "deleted" so only new commits would show up
the repository still shows up in my repository list so if I have 20 repositories I want to hide 80% of my Gitea time then they are still showing up when I check my repo list on the right when being on the dashboard
additionally, I'd have to do this by going to every repository manually and watch/unwatch; it would be nice to have a checkbox kind of thing in the dashboard or any other repository list where I can quickly hide as many repositories in my list as I like and the important thing is, I don't want any information (like commits etc.) to be "deleted" (as explained in the first bullet point), I just want to see them very rarely but not never

Might be than better to use starred repository option and add option to show only starred repository events and starred repositories in repo list. This way there would not be need to add additional option (hidden). Also it is easier to mark what you need not what you don't, at least usually

Might be than better to use starred repository option and add option to show only starred repository events and starred repositories in repo list. This way there would not be need to add additional option (hidden). Also it is easier to mark what you need not what you don't, at least usually

This approach sounds good, too.

Could you update title and description?


test: set up test infrastructure. refers to #71

This is mirroring how the tests are structured in eleventy because both projects share maintainers. That being said I couldn't copy it 1:1, because I don't see CI like CircleCI or Coveralls configured.

It seems that there are merge conflicts; how about rebasing?

Sounds great. I've updated the dependencies I've added to the latest version while at it. npm run test and npm run coverage still run here.

Hi, sorry for the lack of reply on my side. I'm really busy these days. I'll try to catch up with this project's PRs within a week.

@nhoizey Looking forward to your review then :orange_heart:


Microsoft.WITDataStore32.dll not found

I am having a problem where a native library is not found from the Microsoft.TeamFoundationServer.ExtendedClient. The library is originally located in the "/lib/native/x86" folder. As this is not the current convention I copied the dll to the "/runtimes/{runtime}/native" folder. I added a dll for every runtime thinkable.
This solution however did not work.
The only way in which I could get this to work is to copy the dll to the "lib/net45" folder, which I think is a little bit hacky.
I am using only dnx451.
Is this a common problem, am I doing something totally wrong or is this a bug that should be solved somewhere?

This issue is being closed because it has not been updated in 3 months.
We apologize if this causes any inconvenience. We ask that if you are still encountering this issue, please log a new issue with updated information and we will investigate.


Resource action auth

This implements auth via the auth json files. As well as creates integration tests to confirm that they are exposed/ hidden correctly.

@hibooboo2 Tests failed

Suggest to rebase to get darren's test stabilization fixes.

Ok. Will do.


[backport] Reset cuda runtime error

Backport of #1592

Jenkins CI test (for commit be1536c08c40573ed7f264d033d8b1be571ab998, target branch v4) succeeded!

Thanks, LGTM!


Run test from string code

I want to run my mocha test from a string with code instead to use the addFile method. Is there some way to do this, without writing the code to a file first?

You could probably rig up something using Node's sandboxing capabilities, e.g.:
var vm = require("vm")
var assert = require("assert")

describe("dynamic test", function() {
  var testString = "assert.strictEqual(" + Math.random() + ", " + Math.random() + ")"
  var testName = "dynamically generated test"
  vm.runInNewContext("it('" + testName + "', function() {" + testString + "})", {assert: assert, it: it}, {displayErrors:true})
})

...or, to emulate addFile + loadFiles (this is based on the code in loadFiles):
var vm = require("vm")
var Mocha = require("mocha")
var mocha = new Mocha({ui:"bdd"})
pseudoFile(mocha, {assert:require("assert")},
  "describe('dynamic tests', function() {\
    it('should be crazy', function() {\
      assert.strictEqual('what', 'on earth')\
    })\
  })")
mocha.run()

function pseudoFile(mocha, context, fileContent) {
  mocha.suite.emit("pre-require", context, ":memory:", mocha)
  mocha.suite.emit("require", vm.runInNewContext(fileContent, context, {displayErrors: true}), ":memory:", mocha)
  mocha.suite.emit("post-require", context, ":memory:", mocha)
}

(On a little further reflection, I'm not certain if that works for the exports interface -- I don't have much experience with the vm module. So let me know if you have any trouble with that and I will see if I can dig into it more.)

This begs the question why you want to run tests from a string.

@ScottFreeCode Thanks for the explanation I'll try it in a couple of days. @boneskull I'm working on a server side code validation system. And I want to write mocha tests to test the code that is going to be send to the api.

Now that I think about that, I feel the need to mention that if you're running end-user/third-party code on your server (not sure if that's the case, but just in case) then you will want some sort of security audited sandboxing, as there are a lot of things that the code to be "tested" could try to tamper with when being run for the testing.


V1 Roadmap

List of things need for v1

[ ] Docs #23
[ ] Better Tests #21 (under @przemwierzbicki, @anmol5varma help)
[ ] Fix the build and add more tests there
[ ] Project refactore - structure, hooks, SSR, redux, add Mobx and few more

Feel free to add more if needed ...
Thanks

@przemwierzbicki @anmol5varma as far as this roadmap is concerned, I would appreciate your comments in this.
And Also do we need more tests for the client? For me, I guess the current tests are fine.
I just need to add some for the server. I will try to cover that too soon and will appreciate your help too. 😃

Hello @anikethsaha
I'm currently working on a project about project structure especially with React.
Do you have any problem with ur current project structure?

for project structure, I actually had suggestion like removing the src/common folder,
Actually, when I started the project, I  thought of doing SSR for every component, not based on the route
But I don't think that gonna be effective. Although I can reconsider that if I find any better reason !
You can check the v1 https://github.com/anikethsaha/MERN/pull/117

yeah do ping me on twitter. We can consider that for v1 or if possible v2.

Actually I'm not using twitter. :(
can we try using LinkedIn or other?

yeah sure
https://www.linkedin.com/in/aniketh-saha-8a67aa148/

I can help with writing unit tests. which file should I start with?

Thanks, That's great.
Actually, for frontend, it seems that we convered most of the part, Can you try for the server?


fix btc signer error in ledger mode, ref #4873

Try out this version of Leather — Extension build, Test report

Quick fix for #4873

@alter-eggo tested and looking good, thanks for picking this up right away.


Multiple configurations

While the default variable for multiple configurations is separated by | (x86|x64) this documentation instructions to use ,
Also there is no multiconfigations options on options tab.
[Enter feedback here]

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

ID: 29f86c97-f534-50ad-bfb1-a2cf78c7af94
Version Independent ID: acea40e3-512b-4d9a-9389-71b8b24327be
Content: Visual Studio Build build and release task - Azure Pipelines & TFS
Content Source: docs/pipelines/tasks/build/visual-studio-build.md
Product: devops
GitHub Login: @andyjlewis
Microsoft Alias: alewis

Thank you for reporting this issue. Apologies for the very delayed response. I've added this issue to our backlog.


Full robot load

We should have a plan that can take a puck/sample and does the load. This includes

Pre robot load https://github.com/DiamondLightSource/python-artemis/issues/330
The actual robot load
Wait for it to be loaded https://github.com/DiamondLightSource/python-artemis/issues/328
Post robot load https://github.com/DiamondLightSource/python-artemis/issues/331

Error handling is also hard for the robot


Add host info to machine

[x] read the CONTRIBUTING guidelines
[ ] raised a GitHub issue or discussed it on the projects chat beforehand
[ ] added unit tests
[ ] added integration tests
[ ] updated documentation if needed
[ ] updated CHANGELOG.md

Hi,
I would like to have the hostInfo exposed, which allows gGRPC to show full host info.
See here<EMAIL_ADDRESS>I'm unsure how to add tests around this.
I've tested this with my service which calls the gRPC endpoint, and it works :tada:.

Hi, while we do appreciate contribution, this one concerns me quite a bit as it hand types an upstream resource which will likely drift really fast and we would have the burden of making sure they stay in sync, which isnt really realistic.
This data could be exposed over gRPC, but then it should be a generic interface or JSON or something that allow you to unmarshal it to the upstream type on the other side.

Makes sense, and I agree.
My knowledge of Go is pretty limited, is there an easier way to do this (like a struct/interface/etc)? That way we could mimic how tailscale works, but if they change the way hostinfo works tailscale won't complain when the dep is bumped.

Closing this for now, it will require a large rebase after our code reorg work goes in. If picked up again, please open when ready.


SQL Server Failover Cluster Backup options are missing

In Azure it is possible to deploy a SQL Server Failover Cluster using S2D or Azure Premium File Share to store SQL data. This document should be updated to include backup options for these deployment options

SQL Server 2019 is missing. This article should be updated to include SQL Server 2019

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

ID: a0e26853-8b25-7b94-ce79-c47853ca18aa
Version Independent ID: 39636d49-dc5e-62c6-6bcb-70616cff369e
Content: Backup and Restore for SQL Server in Azure VMs - Azure SQL Server VM
Content Source: articles/virtual-machines/windows/sql/virtual-machines-windows-sql-backup-recovery.md
Service: virtual-machines-sql
GitHub Login: @MikeRayMSFT
Microsoft Alias: mikeray

@giovannifl - there are updates to this scenario in development. Thank you for the feedback.

#please-close


Improve service unit file

oneshot service unit type is not active until the executed cmd ends,
however the system agent is a service and polls for plans in an
infinite loop. A simple type is more appropriate, also adding restart
in case something fails contacting to the management cluster.
Signed-off-by: David Cassany<EMAIL_ADDRESS>

Not sure what issue is fixed with that change. 🤔
Note that elemental-system-agent won't be started once rancher-system-agent is deployed 😉  Maybe this needs to change too ?!