running pip install -r requirements.txt fails when trying to build an image

My Dockerfile:
`
FROM python:3.7
WORKDIR /fastapi-app
COPY requirements.txt /tmp/
RUN pip install --requirement /tmp/requirements.txt
COPY . /tmp/
COPY ./app ./app
CMD ["python","./app/main.py"]`
requirements.txt:
annotated-types==0.5.0
anyio==3.7.1
click==8.1.7
exceptiongroup==1.1.3
fastapi==0.103.2
h11==0.14.0
idna==3.4
importlib-metadata==6.7.0
pydantic==2.4.2
pydantic_core==2.10.1
sniffio==1.3.0
starlette==0.27.0
typing_extensions==4.7.1
uvicorn==0.22.0
uvloop==0.17.0
websockets==11.0.3
zipp==3.15.0
error:
docker build -t python-fastapi .
[+] Building 5.1s (8/10)
=> [internal] load build definition from Dockerfile                                                                                0.0s
=> => transferring dockerfile: 225B                                                                                0.0s
=> [internal] load .dockerignore                                                                                0.0s
=> => transferring context: 2B                                                                                0.0s
=> [internal] load metadata for docker.io/library/python:3.7                                                                                0.0s
=> [internal] load build context                                                                                1.9s
=> => transferring context: 37.49MB                                                                                1.9s
=> [1/6] FROM docker.io/library/python:3.7                                                                                0.0s
=> CACHED [2/6] WORKDIR /fastapi-app                                                                                0.0s
=> [3/6] COPY requirements.txt /tmp/                                                                                0.3s
=> ERROR [4/6] RUN pip install --requirement /tmp/requirements.txt                                                                                2.8s

[4/6] RUN pip install --requirement /tmp/requirements.txt:
#8 2.136 Collecting annotated-types==0.5.0
#8 2.267   Downloading annotated_types-0.5.0-py3-none-any.whl (11 kB)
#8 2.349 Collecting anyio==3.7.1
#8 2.367   Downloading anyio-3.7.1-py3-none-any.whl (80 kB)
#8 2.379 ERROR: Exception:
#8 2.379 Traceback (most recent call last):
#8 2.379   File "/usr/local/lib/python3.7/site-packages/pip/_internal/cli/base_command.py", line 160, in exc_logging_wrapper
#8 2.379     status = run_func(*args)
#8 2.379   File "/usr/local/lib/python3.7/site-packages/pip/_internal/cli/req_command.py", line 247, in wrapper
#8 2.379     return func(self, options, args)
#8 2.379   File "/usr/local/lib/python3.7/site-packages/pip/_internal/commands/install.py", line 420, in run
#8 2.379     reqs, check_supported_wheels=not options.target_dir
#8 2.379   File "/usr/local/lib/python3.7/site-packages/pip/_internal/resolution/resolvelib/resolver.py", line 93, in resolve
#8 2.379     collected.requirements, max_rounds=try_to_avoid_resolution_too_deep
#8 2.379   File "/usr/local/lib/python3.7/site-packages/pip/_vendor/resolvelib/resolvers.py", line 481, in resolve
#8 2.379     state = resolution.resolve(requirements, max_rounds=max_rounds)
#8 2.379   File "/usr/local/lib/python3.7/site-packages/pip/_vendor/resolvelib/resolvers.py", line 348, in resolve
#8 2.379     self._add_to_criteria(self.state.criteria, r, parent=None)
#8 2.379   File "/usr/local/lib/python3.7/site-packages/pip/_vendor/resolvelib/resolvers.py", line 172, in _add_to_criteria
#8 2.379     if not criterion.candidates:
#8 2.379   File "/usr/local/lib/python3.7/site-packages/pip/_vendor/resolvelib/structs.py", line 151, in bool
#8 2.379     return bool(self._sequence)
#8 2.379   File "/usr/local/lib/python3.7/site-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 155, in bool
#8 2.379     return any(self)
#8 2.379   File "/usr/local/lib/python3.7/site-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 143, in
#8 2.379     return (c for c in iterator if id(c) not in self._incompatible_ids)
#8 2.379   File "/usr/local/lib/python3.7/site-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 47, in _iter_built
#8 2.379     candidate = func()
#8 2.379   File "/usr/local/lib/python3.7/site-packages/pip/_internal/resolution/resolvelib/factory.py", line 211, in _make_candidate_from_link
#8 2.379     version=version,
#8 2.379   File "/usr/local/lib/python3.7/site-packages/pip/_internal/resolution/resolvelib/candidates.py", line 303, in init
#8 2.379     version=version,
#8 2.379   File "/usr/local/lib/python3.7/site-packages/pip/_internal/resolution/resolvelib/candidates.py", line 162, in init
#8 2.379     self.dist = self._prepare()
#8 2.379   File "/usr/local/lib/python3.7/site-packages/pip/_internal/resolution/resolvelib/candidates.py", line 231, in _prepare
#8 2.379     dist = self._prepare_distribution()
#8 2.379   File "/usr/local/lib/python3.7/site-packages/pip/_internal/resolution/resolvelib/candidates.py", line 308, in _prepare_distribution
#8 2.379     return preparer.prepare_linked_requirement(self._ireq, parallel_builds=True)
#8 2.379   File "/usr/local/lib/python3.7/site-packages/pip/_internal/operations/prepare.py", line 491, in prepare_linked_requirement
#8 2.379     return self._prepare_linked_requirement(req, parallel_builds)
#8 2.379   File "/usr/local/lib/python3.7/site-packages/pip/_internal/operations/prepare.py", line 542, in _prepare_linked_requirement
#8 2.379     hashes,
#8 2.379   File "/usr/local/lib/python3.7/site-packages/pip/_internal/operations/prepare.py", line 170, in unpack_url
#8 2.379     hashes=hashes,
#8 2.379   File "/usr/local/lib/python3.7/site-packages/pip/_internal/operations/prepare.py", line 107, in get_http_url
#8 2.379     from_path, content_type = download(link, temp_dir.path)
#8 2.379   File "/usr/local/lib/python3.7/site-packages/pip/_internal/network/download.py", line 147, in call
#8 2.379     for chunk in chunks:
#8 2.379   File "/usr/local/lib/python3.7/site-packages/pip/_internal/cli/progress_bars.py", line 52, in _rich_progress_bar
#8 2.379     with progress:
#8 2.379   File "/usr/local/lib/python3.7/site-packages/pip/_vendor/rich/progress.py", line 1169, in enter
#8 2.379     self.start()
#8 2.379   File "/usr/local/lib/python3.7/site-packages/pip/_vendor/rich/progress.py", line 1160, in start
#8 2.379     self.live.start(refresh=True)
#8 2.379   File "/usr/local/lib/python3.7/site-packages/pip/_vendor/rich/live.py", line 132, in start
#8 2.379     self._refresh_thread.start()
#8 2.379   File "/usr/local/lib/python3.7/threading.py", line 852, in start
#8 2.379     _start_new_thread(self._bootstrap, ())
#8 2.379 RuntimeError: can't start new thread
#8 2.628
#8 2.628 [notice] A new release of pip is available: 23.0.1 -> 23.2.1
#8 2.628 [notice] To update, run: pip install --upgrade pip

executor failed running [/bin/sh -c pip install --requirement /tmp/requirements.txt]: exit code: 2
I tried googling for my issue but nothing seems to be helpful in my case. any suggestions what it might be?

Duplicate of https://github.com/docker-library/python/issues/835

So, the answer is likely https://github.com/docker-library/python/issues/837#issuecomment-1599640563


Ensure no Okio in API

So, Okio is actually present in the API dump. Next step: review the occurrences and check if the definitions can be made internal/private.

I'd prefer it if this check could be done locally. It'd be convenient to be able to run all tests locally, so I could be more confident that the tests would pass on CI.

Ah, right! Having it as a unit test makes sense, not sure why I implemented it this way.

@aSemy just wondering: if we switch to kotlinx.io, would we actually let it be present in the API? It'd make sense to me.

@aSemy just wondering: if we switch to kotlinx.io, would we actually let it be present in the API? It'd make sense to me.

Yes, I think so, assuming that kotlinx-io becomes the defacto standard.
TBH I think right now that Okio is the defacto standard, and we should consider just requiring it as a dependency, and using it in the public ABI. If/when kotlinx-io is released as stable, we could migrate to it.

Ok, so I think we should discard this PR.


Update README.md

fixes broken link to blog post.

thanks!

You’re welcome and by the way nice work. I’m very inspired as a fellow musician.

On Nov 30, 2022, at 09:29, Szymon Kaliski @.***> wrote:
Merged #10 into master.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>


JVM "-client" option not supported on POWER platform

It was discovered that chaintool would not run on Power systems because the JVM would complain about the -client switch being passed in.  This switch was emitted into the JAR preamble script created by the lein-bin plugin.  Need to find a solution that works across at least X86/P/Z

Fixed in v0.9.1


python310: doesn't need ctypes.util.find_library() patch

Motivation for this change
This patch is only needed on Python 3.9 version, as it is included in
3.10.0 release.
Without the patch, python310 fails to build:
❯ nix-build . -A python310
these derivations will be built:
  /nix/store/l9sk78d57pxcgf3bjnda0qx2z3f1svx0-python3-3.10.0.drv
building '/nix/store/l9sk78d57pxcgf3bjnda0qx2z3f1svx0-python3-3.10.0.drv'...
unpacking sources
unpacking source archive /nix/store/vqkygvlylaml6wzwhcxklnmhhj7fjlaq-Python-3.10.0.tar.xz
source root is Python-3.10.0
setting SOURCE_DATE_EPOCH to timestamp<PHONE_NUMBER> of file Python-3.10.0/Misc/NEWS
patching sources
applying patch /nix/store/345r2zz7pgiyk91j89qlf7mhs95jrv6f-no-ldconfig.patch
patching file Lib/ctypes/util.py
applying patch /nix/store/r112dk8w7zvdjipki58ch00m825li7fq-virtualenv-permissions.patch
patching file Lib/venv/__init__.py
Hunk #1 succeeded at 388 with fuzz 2 (offset 9 lines).
applying patch /nix/store/lpfs02z2i2hamz9f50p4bz6v0fs0600j-mimetypes.patch
patching file Lib/mimetypes.py
Hunk #1 succeeded at 46 (offset 6 lines).
applying patch /nix/store/dkb2rjyj7lwmvsn4zzwx85kx8r61nk9w-darwin-libutil.patch
patching file Modules/posixmodule.c
Hunk #1 succeeded at 7195 (offset 1315 lines).
applying patch /nix/store/x6aiw4vay2b63slqz5byimn0alhg5b1s-darwin-tcl-tk.patch
patching file setup.py
Hunk #1 succeeded at 2094 (offset 113 lines).
applying patch /nix/store/xid1jwdpp3zvg7a9zl41snb9hgvam1w3-bpo-44689-ctypes.util.find_library-now-finds-macOS-1.patch
patching file Misc/NEWS.d/next/macOS/2021-07-20-22-27-01.bpo-44689.mmT_xH.rst
patching file Modules/_ctypes/callproc.c
Reversed (or previously applied) patch detected!  Assume -R? [n]
Apply anyway? [n]
Skipping patch.
2 out of 2 hunks ignored -- saving rejects to file Modules/_ctypes/callproc.c.rej
builder for '/nix/store/l9sk78d57pxcgf3bjnda0qx2z3f1svx0-python3-3.10.0.drv' failed with exit code 1
error: build of '/nix/store/l9sk78d57pxcgf3bjnda0qx2z3f1svx0-python3-3.10.0.drv' failed

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[x] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
22.05 Release Notes (or backporting 21.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[ ] Fits CONTRIBUTING.md.

Hi @FRidh, could you please take a look at this patch? It fixes an issue that I'm seeing with the recent master and using python 3.10.


Expose support for specifying certificates in VM creation and update flow

This should operate on List<VaultSecretGroup> osProfile.secrets collection

Should work on the fluent premium lib.


Remove IndexedInts.fill()

This method is unused.
No compatibility implications, because IndexedInts is not a part of public API.

@leventov, for compatibility, do you mean IndexedInts is NOT part of public API ?

@nishantmonu51 yes, fixed my message


Move most deps to devDependencies

There is no reason to install all those dev dependencies on consumer machines.
Besides, we don't want to rely on a global package across the team, so tsdx is part of a project deps and bloats node_modules quite heavily. Also spits a lot a peerDeps warnings for most of those deps.
The list could be probably trimmed down even more, but this is a start of the obvious ones. I don't want to dive into the code right now to find out true runtime dependencies.

@sw-yx is this okay?

I don't think all of those are development dependencies. Since this package is an abstraction over other build tools these would need to be installed on the consumers device, too.
I just did a quick test by creating a package, installing it in another project and run the tsdx create lib command.
During installation I am getting:
npm WARN<EMAIL_ADDRESS>requires a peer of @babel/core@7 || ^7.0.0-rc.2 but none is installed. You must install peer dependencies yourself.
npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none is installed. You must install peer dependencies yourself.

Running tsdx create lib produces:
➜ node_modules/.bin/tsdx create lib
internal/modules/cjs/loader.js:638
    throw err;
    ^

Error: Cannot find module 'jest'
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:636:15)
    at Function.Module._load (internal/modules/cjs/loader.js:562:25)
    at Module.require (internal/modules/cjs/loader.js:692:17)
    at require (internal/modules/cjs/helpers.js:25:18)
    at Object.<anonymous> (/Users/hmittrop/dev/awesome-library/node_modules/tsdx/dist/index.js:12:40)
    at Module._compile (internal/modules/cjs/loader.js:778:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
    at Module.load (internal/modules/cjs/loader.js:653:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
    at Function.Module._load (internal/modules/cjs/loader.js:585:3)

Oh, I did not even know that TSDX allows running ESLint and Jest. I never felt the need to use those. In that case, I guess it makes sense to keep all those deps there.


[Website] add hsbc case-study

add hsbc case-study with related files
before:

after:

Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Mention the appropriate issue in your description (for example: addresses #123), if applicable. This will automatically add a link to the pull request in the issue. If you would like the issue to automatically close on merging the pull request, comment fixes #<ISSUE NUMBER> instead.
[ ] Update CHANGES.md with noteworthy changes.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

See the Contributor Guide for more tips on how to make review process smoother.
To check the build health, please visit https://github.com/apache/beam/blob/master/.test-infra/BUILD_STATUS.md
GitHub Actions Tests Status (on master branch)

See CI.md for more information about GitHub Actions CI.

R: @sysede R: @pabloem please take a look to review HSBC case study


TIKA-774: ExifTool Parser

Contribution of tika-exiftool for review

@rgauss the work here is fantastic. This really could easily replace the one I wrote. If you don't have time I'll go ahead and update the wiki (which is a necessary first step since we have that wiki page now) here: http://wiki.apache.org/tika/EXIFToolParser I think that we can merge this in 1.14

@rgauss I tried running this without exiftool installed, and I get:

Results :

Failed tests:
  ExiftoolExternalEmbedderTest>ExternalEmbedderTest.testEmbedStandardInputStream:277->ExternalEmbedderTest.embedInTempFile:251 Cannot run program "exiftool": error=2, No such file or directory
  ExiftoolExternalEmbedderTest>ExternalEmbedderTest.testEmbedTikaInputStream:288->ExternalEmbedderTest.embedInTempFile:251 Cannot run program "exiftool": error=2, No such file or directory

Test failures. The tests need to pass without exiftool can you help?

@rgauss after installing exiftool I now see these (different errors):
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.085 sec - in org.apache.tika.parser.xml.FictionBookParserTest
Running org.apache.tika.sax.PhoneExtractingContentHandlerTest
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.086 sec - in org.apache.tika.sax.PhoneExtractingContentHandlerTest
Running org.apache.tika.TestParsers
Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 1.148 sec - in org.apache.tika.TestParsers
Running org.apache.tika.utils.ServiceLoaderUtilsTest
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.08 sec - in org.apache.tika.utils.ServiceLoaderUtilsTest

Results :

Failed tests:
  ForkParserIntegrationTest.testParserHandlingOfNonSerializable:210 expected:<Unable to serialize [ParseContext] to pass to the Fork...> but was:<Unable to serialize [AutoDetectParser] to pass to the Fork...>
Tests in error:
  ForkParserIntegrationTest.testAttachingADebuggerOnTheForkedParserShouldWork:234 » Tika
  ForkParserIntegrationTest.testForkedPDFParsing:257 » Tika Unable to serialize ...
  ForkParserIntegrationTest.testForkedTextParsing:66 » Tika Unable to serialize ...

Tests run: 748, Failures: 1, Errors: 3, Skipped: 14

[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO]
[INFO] Apache Tika parent ................................. SUCCESS [  0.846 s]
[INFO] Apache Tika core ................................... SUCCESS [ 10.333 s]
[INFO] Apache Tika parsers ................................ FAILURE [03:42 min]
[INFO] Apache Tika XMP .................................... SKIPPED
[INFO] Apache Tika serialization .......................... SKIPPED
[INFO] Apache Tika batch .................................. SKIPPED
[INFO] Apache Tika language detection ..................... SKIPPED
[INFO] Apache Tika application ............................ SKIPPED
[INFO] Apache Tika OSGi bundle ............................ SKIPPED
[INFO] Apache Tika translate .............................. SKIPPED
[INFO] Apache Tika server ................................. SKIPPED
[INFO] Apache Tika examples ............................... SKIPPED
[INFO] Apache Tika Java-7 Components ...................... SKIPPED
[INFO] Apache Tika ........................................ SKIPPED
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 03:53 min
[INFO] Finished at: 2016-08-14T20:30:46-07:00
[INFO] Final Memory: 60M/942M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.18.1:test (default-test) on project tika-parsers: There are test failures.
[ERROR]
[ERROR] Please refer to /Users/mattmann/tmp/tika1.14/tika-parsers/target/surefire-reports for the individual test results.
[ERROR] -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
[ERROR]
[ERROR] After correcting the problems, you can resume the build with the command
[ERROR]   mvn <goals> -rf :tika-parsers


neuroglancer yaml is not working

conda environments on mac and linux does not work. Needs fixing.

You can currently do it by hand:
conda create -n nglancer python=3.10
conda activate nglancer
pip install neuroglancer==2.37
pip install zarr
pip install h5py
pip install dask
pip install https://github.com/funkelab/funlib.persistence.git
pip install  git+https://github.com/funkelab/funlib.persistence.git
pip show argparse
pip install argparse
pip install tifffile


tour: foreign versions broken or unavailable

I notice the french version of Golang Tour returns empty response when executing code. I try other languages and found other "broken" versions:
What did you do?
Run Hello.go
What did you expect to see?
A correct output :
Hello, 世界

Program exited.

What did you see instead?
An empty response:
Program exited.

Summary

Language
Code execution
Available

Brazilian Portuguese — Português do Brasil
ok
ok

Catalan — Català
ok
ok

German — Deutsch
FAIL
ok

Spanish — Español
ok
ok

French — Français
FAIL
ok

Indonesia — Bahasa
ok
ok

Italian — Italiano
ok
ok

Hebrew — עִבְרִית
ok
ok

Japanese — 日本語
ok
ok

Korean — 한국어
ok
ok

Romanian — Română
ok
ok

Simplified Chinese — 中文（简体）
ok
ok

Traditional Chinese — 中文（繁體）
ok
ok

Ukrainian — Українська
FAIL
ok

Uzbek — Ўзбекча
FAIL
ok

Turkish - Türkçe
FAIL
FAIL

The turkish domain isn't resolving.

This is a dupe of #15693


Tiered Z crash when reforging

Mod Name
TieredZ
Mod Homepage
https://www.curseforge.com/minecraft/mc-mods/tieredz
Minecraft version
1.20.1
Describe the bug
Crash when opening Reforging tab on Anvil (on beta 39)
Steps to reproduce

Install all dependencies: AutoTag, ClothConfig (Fabric), LibZ
Install TieredZ
Boot the title
Use anvil
Open reforging tab
Notice that title crashes

Logs
https://paste.atlauncher.com/view/a4ca698a-9697-460b-a34e-55d3e20462be
Additional context
Forge "version" is not the same, though can't be used as replacament.
Tested on Connector-1.0.0-beta.39+1.20.1

This is a known issue with TieredZ - you're using an outdated version of libz. See https://github.com/Globox1997/tiered/issues/97

@Su5eD TY!!! Sorry for bothering


bro: 2.4.1 -> 2.5

Motivation for this change
Things done

[ ] Tested using sandboxing
(nix.useSandbox on NixOS,
or option build-use-sandbox in nix.conf
on non-NixOS)
Built on platform(s)

[ ] NixOS
[ ] macOS
[ ] Linux

[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Fits CONTRIBUTING.md.

these derivations will be built:
  /nix/store/1bqn5rl2nz1bhh5mikqwlnjqzhx1d3n1-bro-2.5.tar.gz.drv
  /nix/store/yqxv68xwsdzr6w3d47jgafbs88vf1sys-bro-2.5.drv
building path(s) ‘/nix/store/lhjddbjdkdzb47ksnibpvaq1iw68yrwz-bro-2.5.tar.gz’

trying http://www.bro.org/downloads/release/bro-2.5.tar.gz
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   260  100   260    0     0    361      0 --:--:-- --:--:-- --:--:--   708
  0     0    0     0    0     0      0      0 --:--:--  0:00:01 --:--:--     0
curl: (22) The requested URL returned error: 404 Not Found
error: cannot download bro-2.5.tar.gz from any mirror
builder for ‘/nix/store/1bqn5rl2nz1bhh5mikqwlnjqzhx1d3n1-bro-2.5.tar.gz.drv’ failed with exit code 1
cannot build derivation ‘/nix/store/yqxv68xwsdzr6w3d47jgafbs88vf1sys-bro-2.5.drv’: 1 dependencies couldn't be built
error: build of ‘/nix/store/yqxv68xwsdzr6w3d47jgafbs88vf1sys-bro-2.5.drv’ failed

Held up by #20522

Ok, all fixed up now.

WFM but @pSub took the issue, so I'll let them take point on it.

Looks good, thanks. I assigned myself to the PR, because I started looking into it and had to interrupt.


auto_find_instance_path() gives inconsistent results

I have a fairly straightforward project scaffolded out that looks like
my_app/
    my_app/
        __init__.py
        models.py
        mod1/
        mod2/
    instance/
        config.py
    config.py
    setup.py

I installed this as a package to a virtualenv with setup.py develop.  My __init__.py looks like:
from flask import Flask
from flask.ext.sqlalchemy import SQLAlchemy

app = Flask(__name__, instance_relative_config=True)
app.config.from_pyfile('config.py')

db = SQLAlchemy(app)

If I run this file, I get an error Unable to load configuration file (No such file or directory): '/home/my_app/my_app/instance/config.py'. Indeed, this is the wrong path; it should be looking in /home/my_app/instance/config.py.
The file models.py contains only one line of code so far: from my_app import db. I can run this without any errors, which is obviously executing all the code in __init__.py as well. If I check the value of Flask.auto_find_instance_path in this context it has the correct path, unlike above.
Unless I am doing something wrong here, or this is a consequence of setup.py developing that I'm not understanding -- I believe this is an issue with the find_package helper  called by auto_find_instance_path . When I run  __init__.py directly, __name__ is set to __main__, which causes find_package to return os.getcwd(). When I run models.py, the __name__ for __init__.py is set to my_app which causes it to resolve properly via the module name.
This is my first large/packaged Flask project so maybe I'm missing something, but I believe the docs say that your instance folder should be next to your main application module, not inside it. If that's the case, why does find_package attempt to look in the current working directory? Shouldn't it look in the parent directory?

There is no problem with auto_find_instance_path.  If your app is a package, you should not be running it with python __init__.py.  If you've installed it in develop mode , that won't effect it, it only switches to production mode if you install it not in develop mode.  Here's an example of an installable app and how to run it: https://github.com/sopython/sopython-site.

See ahttp://flask.pocoo.org/docs/0.10/config/#instance-folders for an explanation of how the path is determined.

The pattern I was missing was in here:
http://flask.pocoo.org/docs/0.10/patterns/packages/

But how do you run your application now? The naive python yourapplication/init.py will not work. Let’s just say that Python does not want modules in packages to be the startup file. But that is not a big problem, just add a new file called runserver.py next to the inner yourapplication folder [...]

Yes, that wasn't apparent in your Stack Overflow question, I'm editing it and answering it.

Wait, you're not Evan Fosmark, what a weird coincidental duplicate question.


Tokyo Night for Minimal

Please add some Tokyo Night-ish theme (and perhaps the syntax highlighting?) for Minimal, especially the color schemes Tokyo Night (Moon) and/or Tokyo Night (Storm). I would be happy just for anything Tokyo Night.
https://github.com/folke/tokyonight.nvim

This can be achieved using the Style Settings plugin

has anyone done this & could be willing to share their config from Style Settings Plugin?

Here's the CSS snippet: https://gist.github.com/basilioss/060b9a9a45b510cfa95aa65e038363b3, though it would still be nice to have this theme built in.

@basilioss this is amazing! could you tell how to import the css snippet into obsidian ?


Replace rogue encoder and decoder instances

Describe the bug
There are a few instances where one-off encoders and decoders are being created by models. We should be using the encoder/decoder from the client instead of creating new instances.
There are a few benefits to this

we get any configuration that was performed on the encoder/decoder
we remove coupling and follow proper dependency injection pattern

One example: https://github.com/awslabs/aws-sdk-swift/blob/39db4f1c33ef04169540849af496d1747f7b26f4/AWSClientRuntime/Sources/Protocols/Ec2Query/Ec2QueryError.swift#L18
Expected Behavior
N/A
Current Behavior
N/A
Reproduction Steps
N/A
Possible Solution
No response
Additional Information/Context
No response
AWS SWIFT SDK version used
N/A
Compiler and Version used
N/A
Operating System and version
N/A

Closed due to new closure-based serde.


Download binaries?

According to the documentation it says:

Starting with libuv 1.7.0, binaries for Windows are also provided.

As far as I can see there is only a windows installer available.  Is it possible to just get the binaries in a zip? I looked for a little while but haven't been able to find them.
Thanks.

This was brought up once in the past, and IIRC the resolution was that they can be easily extracted from the exe.  Have tried looking into that?  I really don't see the point in releasing 2 sets of binaries for Windows...

I just ran the installer and pulled out the binaries into my repo and then uninstalled.
If I had a say I'd vote for just a zip or tar.gz with the binaries in it. Preferably one for each platform and deployed to github as a release. If the binaries were available per platform then I could easily write a script that just pulls them down during initialization.
The way it is now, I will have to manually push the binaries into my repo from time to time. Not a big deal but it could be a little nicer I think.

I just ran the installer and pulled out the binaries into my repo and then uninstalled.

I was under the impression you could "unzip" the installer.  I may off base here though.

If I had a say I'd vote for just a zip or tar.gz with the binaries in it. Preferably one for each platform and deployed to github as a release. If the binaries were available per platform then I could easily write a script that just pulls them down during initialization.
The way it is now, I will have to manually push the binaries into my repo from time to time. Not a big deal but it could be a little nicer I think.

We don't really ship binaries.  We just release the source, except for that Windows installer, which is deemed "experimental".  We also don't use (nor plan to switch to using) GitHub releases, so that's most likely not going to happen.
Out of curiosity: is there a reason why you rather have binary libuv releases?  What if we generate them with a different MSVC version than your project uses?

Thanks for talking it through.
I never thought to try to unzip the .exe I'll give it a try and see what happens. It's a little strange, but if it works that's cool.
I'm actually trying to see how far I can get without having VS installed at all. I'm using this:
http://landinghub.visualstudio.com/visual-cpp-build-tools
It basically installs the compile tools and libs and headers but no visual studio at all. It's just that this one lib requires one way of building, another requires some other way. Different versions of VS, etc. etc. Building native can be hard, the more so depending on how many dependencies you have :)
Perhaps I'm just spoiled by package managers at this point but I can't help but think how easy it would be to just download the binaries and go. It would be very easy for me to write a script that only has a version number in it and then when I'm ready just bump that and I'm done.
Other options are to build the binaries myself once, then commit them into my repo or to hook up submodules and deal with building them all every time someone checks out the repo. The latter can be hard with all the environmental setup and slow.
One other dependency I want to take, for example, is LLVM which is very large and takes quite a bit of time to build and also doesn't ship prebuilt binaries. So I am already dealing with this same situation there. I mean it also has an installer but I want to depend on some of the libs that you can only get from building.
I just wish everyone had their binaries up for each platform and then I could save quite a bit of hassle and time. I've had luck automating this in the past on Travis-ci and AppVeyor. Whenever a tagged build lands into a branch in github it would trigger an official build and package and pub the binaries for darwin/linux/win32 x x86/x64 x debug/release automatically.
I'm not saying its easy but it is possible and pretty slick.
For example, building a matrix for win32 on appveyor:
https://github.com/EvolveLabs/node-mumble-audio/blob/master/appveyor.yml
Similar build for darwin on travis-ci:
https://github.com/EvolveLabs/node-mumble-audio/blob/master/.travis.yml
I never quite got to linux but it should work if the code compiles.
The publish step then uploaded them to s3 in this pattern:
https://s3.amazonaws.com/evolve-bin/node-mumble-audio/node-mumble-audio-0.2.5-win32-ia32-debug.tgz
I then had scripts used during the npm "preinstall" step which would pull down the binaries for that platform/architechture/version and use those. Anyway, it was tricky but having the binaries up can open up all kinds of automation possibilities.
Thanks for listening and talking.

It's really hard to provide binaries for Unix platforms, so we just don't. Also, for better or worse, many applications seem to statically link libuv so that also helps.
On Windows, however, the situation is trickier.  With the package you mentioned you should be able to compile libuv, except for the fact we require Python.  The alternative would be to include the VS solution file in the repo, but not enough people complained about it for us to make a desicion on that :-)
In the v1.x branch we support VS >= 2008.  That's a lot of versions that would need binaries and we just don't have the inclination nor the manpower to do that.
Last, libuv is not and end user piece of software, it's a library, so IMHO it's not unreasonable to expect developers to have the necessary tools to build it.
Please send an email to the mailing list and maybe we can find some critical mass which feels like we could improve this on Windows.  I know the Kestrel folks mentioned something about releasing unmodified libuv binaries on Nuget, but I'm not sure what's the state of that, or if they made any other advancements.
I hope you understand. Cheers!

I understand, I have a dream that one day we will all be using package managers for native libraries... but until that day I'll keep building these things as I need them. Thanks.

Microsoft releases a binary nuget package with libuv  linux(x64), osx, windows(arm, x86, x64) binaries: https://www.nuget.org/packages/Libuv/
Just press Download and then open the downloaded file with a zip archiver of your choice. The linux binaries are all the same on 1.9.0.
Not the most official way, but better than nothing.

Wow that's awesome! Exactly what I was looking for. I didn't think to look there. I suppose they use it for their forked node builds?
Msft for the win?

If I want to link libuv on all major platforms - Linux x64, MacOS, Windows x64, but I don't want to build it form source on all of them, what are my options?

One way I can see would be to have a CI service build this repo for me on all the platforms and then upload results somewhere, but it seems like something that should happen on the official level.

While it's not completely out of the question, there are a lot of subtle, nasty issues, like .a or .so files compiled against a newer glibc not working with older glibc versions. It took us years to work out all the kinks for Node.js and it's still an ongoing effort.

Publishing ones from official Tier 1 CI runs on release cuts could be a start.
Provided as a "best effort" kind of guarantees.
(I'm not demanding anything tho)

We had that for Windows and ended up removing it, FWIW.

@txdv any idea who at MS we can poke to make them publish more recent versions?

@YurySolovyov On the nuget package page there is a link to "Contact Owners"; I went ahead and sent them this message:

Hello!
I was wondering if you could publish an updated version of a package that you maintain?
Specifically this package:
https://www.nuget.org/packages/Libuv/
It appears that you are the only known publisher of precompiled binaries for libuv on multiple platforms and it would help the community out quite a bit if you were to update it, however infrequently.
Here is a link to the discussion thread that prompted this email in case you are interested:
https://github.com/libuv/libuv/issues/1042

If I get no response I'll try to poke a few people directly.

Its been a long time since I looked at this but I just wanted to say that since this is an open source project you can hook it up to travis-ci and appveyor for free.
travis-ci supports building in linux and darwin while appveyor supports building on windows and they both have good continuous integration with github. You can easily configure it so that on any branch or tag or whatever it will trigger a full build and publish automatically. You can also run docker containers from within travis during the build to increase your build matrix to even more specific flavors of linux.
Once compiled simply zip the binaries, libs and headers and publish them as a release to github here, who has an api for that purpose. People can then rely on those packages being in place simply by knowing the version number, which github also has an API to get.
That's how I would do it, it has a cost in terms of time, but should be free in terms of additional fees.

Hi folks, I'm the engineering manager for the ASP.NET Core team at Microsoft, where we use Libuv as an option for ASP.NET Core's Kestrel cross-platform web server. We're the ones who own the Libuv package on NuGet.org (which I believe was done in consultation with Libuv reps at the time we first created the package several years ago).
I logged an issue for the ASP.NET Core team to publish a newer version of the Libuv package: https://github.com/aspnet/AspNetCore/issues/9307
Feel free to track that issue to monitor its status.
Thanks,
Eilon

@Eilon And now I know about Kestrel too, very cool. Keep up the good work.

Didn't last long:

Kestrel's libuv transport is now obsolete so we don't plan to update this dependency.

windows binaries directly from github actions build https://github.com/symplely/libuv/releases/latest


Rename route_controller.yaml.in to router-controller.yaml.in

/cherry-pick release-4.14

@cfergeau updated the commit log.


problem parsing azure netapp swagger circular reference

When parsing https://github.com/Azure/azure-rest-api-specs/blob/main/specification/netapp/resource-manager/Microsoft.NetApp/stable/2022-11-01/netapp.json I get
Error: key not found: "ErrorDetail"

I think this is because of circular references:
"default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "../../../../../common-types/resource-management/v4/types.json#/definitions/ErrorResponse"
            }
          }

might be the common type ErrorDetails does reference itself "$ref": "#/definitions/ErrorDetail"


Add Ruby on Rails

@captn3m0 Maybe we can change how the release column and just show the last released version of that release cycle instead of an NA
  {%if page.releaseColumn != false %}
  <td>
    {% if diff > 0 %}{{r.latest}}{%else%}NA{%endif%}
  </td>
  {%endif%}

example: https://endoflife.date/php, 7.0 and 5.6 are still being used in the market so we can just show which final version of that cycle is the last release. Thoughts?
instead of "NA" we can show the last released version

I'd deliberately hidden unsupported releases (no matter what the release goes there, upgrading to it doesn't get you anything).
If you think it is worth adding, please mark it in red as well :+1: (separate PR perhaps?)

@jmarianer @jhnferraris @captn3m0  @schmijos I think we can close this PR because there is the open issue #41 covering the last point.

Why is this still open? @captn3m0 would you mind freshing this PR up?

@schmijos Have you seen that there is already a Ruby section https://endoflife.date/ruby?

@BiNZGi Yes. Ruby (language) is not the same as Ruby on Rails (framework).

I see these are two different things. I try to resolve the conflict in _layouts/post.html.

Thank you @BiNZGi 🎉


GUI: Please hide "Buy Bitcoins" button from countries, where it's not supported

Bitcoin-com-wallet-3.6.0-win64 on Windows 7 x64. (Chrome v60)
Worth hiding "Buy Bitcoins" feature for countries where it's not supported. (currently travelling in Ukraine) (non-working feature is confusing users)
-Technologov

How can the app know which country you're a legal resident of?

Well, how it decided on the Internet to sell or not to sell?
I think make a list, that is downloaded from the Internet periodically. (and if server inaccessible then disable this feature).
Also the service used my IP address, not my passport to decide whenever to sell me Bitcoin or not.


Define more operations in terms of cata, ana, and hylo.

This is especially useful for Mu/Nu, since these operations will now use the specialized ana/cata rather than the naïve implementations.
Also greatly reduces the number of places we use general recursion.

@paulp I’m guessing this should remove ~19 of the 68 warnings from the Recursion wart. It’s a start.

Very much an improvement. From my POV the entire endeavor is much clearer when the hylomorphism takes center stage and the rest is understood relative to that (e.g. ana and cata as degenerate hylomorphisms) where possible. So to see the implementations take that approach is excellent.

Wow this makes so much sense ! Really helps wrapping my head around the concepts. Seems like it will make for a much simpler expression of why recursion schemes matter.

Yeah, I often explain things like cata(f) === hylo(f, project), and the implementations are actually identical, so I don‘t know why I didn’t actually define it this way before. The Recursion wart really helps highlight the things we want to avoid, though 😆

@paulp BTW, there are at least a handful of other cases I’d like to fix in this PR if you don’t mind waiting a bit. The shorter warning list made a few other changes obvious.

just out of curiosity, for cata(f) === hylo(f, project), are there impacts on speed, either during compile or run time?

@tscholak I haven’t benchmarked it, the implementation is pretty much identical. The only difference is that project is passed as a parameter to each recursive call and I’m not sure what the overhead of that might be. Also, there is the indirection of one more function call – cata -> hylo.

@paulp Ok, I think that’s all for the time being.

@paulp Ok, merged in master and made a couple more small changes. Should be ready for merge for reals.

It would be great to leverage this very library to compare the precise operation counts of various approaches. No reason we should have to speculate about what's happening under the hood.


Error when loading Crüsemann data

I am getting started with using NPLinker (using the docker image) so after completing the 'tutorial' using the example dataset, I tried to load the Crüsemann dataset (MSV000078836) from PoDP. However something goes wrong when retrieving the genome information, causing BiG-SCAPE to fail. This is the error it ultimately crashes with:
Exception: Failed to find any BiGSCAPE Network_Annotations tsv files under "/data/nplinker_data/pairedomics/extracted/MSV000078836/bigscape" (incorrect cutoff value? currently set to 30)
I attached the log file.
Thanks for the help!
crus_log.txt

Yes, looks like NPLinker was unable to retrieve any genomics data at all for this particular project. If everything works as intended, it is supposed to extract genome IDs from the project metadata stored on the platform, download the corresponding .gbk files from the antiSMASH database, and then finally run BiG-SCAPE on them.
The problem here is that metadata for projects on the platform are not all in the same format. This project has the genome IDs stored in a form that NPLinker doesn't currently recognise. The lookup process is also unfortunately quite fragile because it relies on scraping a couple of different websites to find the required IDs/URLs.
From a quick look I think I can see a way to resolve these particular IDs to the required form, but from past experience it probably won't work in every case so the result will likely be a partial collection of genomics files for the dataset. This will at least be enough to run BiG-SCAPE and have the webapp finish loading successfully though.
I'll see if I can get an updated version working later today or tomorrow and let you know once there's a new Docker image you can try out.

Yes, looks like NPLinker was unable to retrieve any genomics data at all for this particular project. If everything works as intended, it is supposed to extract genome IDs from the project metadata stored on the platform, download the corresponding .gbk files from the antiSMASH database, and then finally run BiG-SCAPE on them.
The problem here is that metadata for projects on the platform are not all in the same format. This project has the genome IDs stored in a form that NPLinker doesn't currently recognise. The lookup process is also unfortunately quite fragile because it relies on scraping a couple of different websites to find the required IDs/URLs.
From a quick look I think I can see a way to resolve these particular IDs to the required form, but from past experience it probably won't work in every case so the result will likely be a partial collection of genomics files for the dataset. This will at least be enough to run BiG-SCAPE and have the webapp finish loading successfully though.
I'll see if I can get an updated version working later today or tomorrow and let you know once there's a new Docker image you can try out.

Great. Thanks a lot!

Great. Thanks a lot!

Thanks Andrew! It would be nice to get it to work for this (example) dataset for users to try it out as it is also used in the preprint. Let me know if we should add alternative IDs to the project if that makes the process easier (and if so, which ones....) - Joris and I could look into that.

Thanks Andrew! It would be nice to get it to work for this (example) dataset for users to try it out as it is also used in the preprint. Let me know if we should add alternative IDs to the project if that makes the process easier (and if so, which ones....) - Joris and I could look into that.

And it would be good to know what currently works with the PoDP downloader in NPLinker Andrew....

And it would be good to know what currently works with the PoDP downloader in NPLinker Andrew....

That could be quite helpful! What happens in the current version is:

Retrieve the "genomes" list from the project's JSON data
Check if a 'RefSeq_accession' field exists in the 'genome_ID' dict for each entry in the list

If found, that's used to go straight to the antiSMASH database

If the 'RefSeq_accession' field doesn't exist, it falls back to checking for a 'GenBank_accession' field instead

If that field is found, it does an indirect lookup using ncbi.nlm.nih.gov to get a RefSeq_accession ID and then goes to antiSMASH

If neither of those fields exist then it gives up

For a project like MSV000079284, the per-genome data looks like this:
{"genome_ID": {"genome_type": "genome", "JGI_Genome_ID": "2515154093", "RefSeq_accession": "GCF_000515175.1"}, "genome_label": "Salinispora arenicola CNB527"},
which makes things very simple. But the Crüsemann data looks like this:
{"genome_ID": {"genome_type": "genome", "JGI_Genome_ID": "2517572137"}, "genome_label": "Salinispora arenicola CNT005", "publications": "24616526"},
So the problem with the current NPLinker is that it doesn't know what to do when JGI_Genome_ID is the only info available. If it's easy to update the metadata on the platform to include the RefSeq_accession IDs alongside the JGI ones that would be ideal, at least for this dataset.
What I've started doing to work around the problem is adding another step to the lookup process, so it is capable of going from the JGI Genome database to NCBI to antiSMASH.

That could be quite helpful! What happens in the current version is:

Retrieve the "genomes" list from the project's JSON data
Check if a 'RefSeq_accession' field exists in the 'genome_ID' dict for each entry in the list

If found, that's used to go straight to the antiSMASH database

If the 'RefSeq_accession' field doesn't exist, it falls back to checking for a 'GenBank_accession' field instead

If that field is found, it does an indirect lookup using ncbi.nlm.nih.gov to get a RefSeq_accession ID and then goes to antiSMASH

If neither of those fields exist then it gives up

For a project like MSV000079284, the per-genome data looks like this:
{"genome_ID": {"genome_type": "genome", "JGI_Genome_ID": "2515154093", "RefSeq_accession": "GCF_000515175.1"}, "genome_label": "Salinispora arenicola CNB527"},
which makes things very simple. But the Crüsemann data looks like this:
{"genome_ID": {"genome_type": "genome", "JGI_Genome_ID": "2517572137"}, "genome_label": "Salinispora arenicola CNT005", "publications": "24616526"},
So the problem with the current NPLinker is that it doesn't know what to do when JGI_Genome_ID is the only info available. If it's easy to update the metadata on the platform to include the RefSeq_accession IDs alongside the JGI ones that would be ideal, at least for this dataset.
What I've started doing to work around the problem is adding another step to the lookup process, so it is capable of going from the JGI Genome database to NCBI to antiSMASH.

Thanks Andrew - that's very useful to know. I think having that option in would be very useful so I am hoping that you can include this indeed. Also as I am not entirely sure if those RefSeq IDs exist.... @louwenjjr could you do some investigation and let us know what you find and we can take it from there.

Thanks Andrew - that's very useful to know. I think having that option in would be very useful so I am hoping that you can include this indeed. Also as I am not entirely sure if those RefSeq IDs exist.... @louwenjjr could you do some investigation and let us know what you find and we can take it from there.

That is indeed very useful information.
@justinjjvanderhooft the refseq IDs do exist for the Crüsemann data, for example the one that Andrew mentioned: GCF_000514895.1 (https://www.ncbi.nlm.nih.gov/assembly/GCF_000514895.1/).

That is indeed very useful information.
@justinjjvanderhooft the refseq IDs do exist for the Crüsemann data, for example the one that Andrew mentioned: GCF_000514895.1 (https://www.ncbi.nlm.nih.gov/assembly/GCF_000514895.1/).

Thanks @louwenjjr - given the number of strains we would need to check this for https://pairedomicsdata.bioinformatics.nl/projects/297c364c-b154-4edd-a7d5-68decf9effa2.4 I think it makes sense to see if it works through JGI @andrewramsay, but we could see if we can collect the RefSeq IDs and add them in as well....

Thanks @louwenjjr - given the number of strains we would need to check this for https://pairedomicsdata.bioinformatics.nl/projects/297c364c-b154-4edd-a7d5-68decf9effa2.4 I think it makes sense to see if it works through JGI @andrewramsay, but we could see if we can collect the RefSeq IDs and add them in as well....

This is how I'm trying to do things at the moment:

Take the JGI_Genome_ID and use it to generate a search result page on the JGI site. That results in something like this page for ID<PHONE_NUMBER>.
Extract the "NCBI GenBank ID" value from the table on that page
Pass that ID into the existing code for looking up GenBank IDs

This does work, but not for all cases. Of the 120 genomes listed in the Crüsemann data, it manages to sucessfully download 75 of them from antiSMASH.
The failed ones seem to fall into 2 categories:

looking up the NCBI GenBank ID on the JGI site fails because the "GenBank ID" doesn't appear in the results, e.g. for<PHONE_NUMBER>
the JGI ID gets resolved to a GCF_[something] ID successfully, but searching for it on antiSMASH doesn't produce any matches. e.g. JGI ID<PHONE_NUMBER> gets resolved to GCF_000515015, but antiSMASH returns a 404 page for it (when it's doing these lookups, the app queries both antismash-db.secondarymetabolites.org and antismash-dbv2.secondarymetabolites.org, and tries each domain with and without a ".1" suffix on the GCF_... ID)

Do either of you see anything I'm doing wrong or that could be improved here? NPLinker should run OK as long as it has at least some genomics data available but it would obviously be good to get as much as possible.

This is how I'm trying to do things at the moment:

Take the JGI_Genome_ID and use it to generate a search result page on the JGI site. That results in something like this page for ID<PHONE_NUMBER>.
Extract the "NCBI GenBank ID" value from the table on that page
Pass that ID into the existing code for looking up GenBank IDs

This does work, but not for all cases. Of the 120 genomes listed in the Crüsemann data, it manages to sucessfully download 75 of them from antiSMASH.
The failed ones seem to fall into 2 categories:

looking up the NCBI GenBank ID on the JGI site fails because the "GenBank ID" doesn't appear in the results, e.g. for<PHONE_NUMBER>
the JGI ID gets resolved to a GCF_[something] ID successfully, but searching for it on antiSMASH doesn't produce any matches. e.g. JGI ID<PHONE_NUMBER> gets resolved to GCF_000515015, but antiSMASH returns a 404 page for it (when it's doing these lookups, the app queries both antismash-db.secondarymetabolites.org and antismash-dbv2.secondarymetabolites.org, and tries each domain with and without a ".1" suffix on the GCF_... ID)

Do either of you see anything I'm doing wrong or that could be improved here? NPLinker should run OK as long as it has at least some genomics data available but it would obviously be good to get as much as possible.

That sounds like a reasonable approach to me @andrewramsay! JGI and NCBI are not fully synced, so it could well be that not everything is found at NCBI. Not entirely sure yet why those with GCF identity do not get a result from antiSMASHdb - if you have lists of these two types of errors you got, @louwenjjr and myself could look into this a bit further, and alternatively @louwenjjr could add genomic information manually, but for the purpose of getting a sense of what NPLinker does, 75 genomes is certainly better than 0 genomes! 😎

That sounds like a reasonable approach to me @andrewramsay! JGI and NCBI are not fully synced, so it could well be that not everything is found at NCBI. Not entirely sure yet why those with GCF identity do not get a result from antiSMASHdb - if you have lists of these two types of errors you got, @louwenjjr and myself could look into this a bit further, and alternatively @louwenjjr could add genomic information manually, but for the purpose of getting a sense of what NPLinker does, 75 genomes is certainly better than 0 genomes! 😎

That sounds like a good approach! With this fix I can at least look at some Crüsemann stuff in NPLinker already.
I will look into it why those RefSeqs don't return any antiSMASH information.. It would be nice to figure it out for this dataset as it's the main dataset used in the paper.
Maybe for future PoDP entries, it should be mentioned somewhere that RefSeq accessions should be added? @justinjjvanderhooft

That sounds like a good approach! With this fix I can at least look at some Crüsemann stuff in NPLinker already.
I will look into it why those RefSeqs don't return any antiSMASH information.. It would be nice to figure it out for this dataset as it's the main dataset used in the paper.
Maybe for future PoDP entries, it should be mentioned somewhere that RefSeq accessions should be added? @justinjjvanderhooft

Well, if available of course @louwenjjr - alternatively you could download the genomes from JGI and run antiSMASH and BiG-SCAPE yourself and load it into NPLinker....

Well, if available of course @louwenjjr - alternatively you could download the genomes from JGI and run antiSMASH and BiG-SCAPE yourself and load it into NPLinker....

@andrewramsay for the example you provided without NCBI ID, I followed the NCBI BioProject ID to the genome information: https://www.ncbi.nlm.nih.gov/genome/11829 where I could download a FASTA file....

@andrewramsay for the example you provided without NCBI ID, I followed the NCBI BioProject ID to the genome information: https://www.ncbi.nlm.nih.gov/genome/11829 where I could download a FASTA file....

That’s basically what I did, run antiSMASH and BiG-SCAPE manually - for the Crusemann data set, especially, I had a bunch of the genomic data lying about already.
On 28 Jan 2021, at 18:33, Justin van der Hooft<EMAIL_ADDRESS>wrote:

Well, if available of course @louwenjjrhttps://github.com/louwenjjr - alternatively you could download the genomes from JGI and run antiSMASH and BiG-SCAPE yourself and load it into NPLinker....
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHubhttps://github.com/sdrogers/nplinker/issues/38#issuecomment-769288442, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AAFYXIB7URPHPTLTQJB3V2TS4GUXTANCNFSM4WWZKBAA.

That’s basically what I did, run antiSMASH and BiG-SCAPE manually - for the Crusemann data set, especially, I had a bunch of the genomic data lying about already.
On 28 Jan 2021, at 18:33, Justin van der Hooft<EMAIL_ADDRESS>wrote:

Well, if available of course @louwenjjrhttps://github.com/louwenjjr - alternatively you could download the genomes from JGI and run antiSMASH and BiG-SCAPE yourself and load it into NPLinker....
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHubhttps://github.com/sdrogers/nplinker/issues/38#issuecomment-769288442, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AAFYXIB7URPHPTLTQJB3V2TS4GUXTANCNFSM4WWZKBAA.

@grimur I see. Yes, probably from earlier downloaded versions. Could you perhaps share the contents of the folders Joris would need to load all the data files correctly at some point? For now, the fix of @andrewramsay will allow him to get used to things, but it would be nice for him to copy the results of the NPLinker preprint at some point....

@grimur I see. Yes, probably from earlier downloaded versions. Could you perhaps share the contents of the folders Joris would need to load all the data files correctly at some point? For now, the fix of @andrewramsay will allow him to get used to things, but it would be nice for him to copy the results of the NPLinker preprint at some point....

That sounds like a reasonable approach to me @andrewramsay! JGI and NCBI are not fully synced, so it could well be that not everything is found at NCBI. Not entirely sure yet why those with GCF identity do not get a result from antiSMASHdb - if you have lists of these two types of errors you got, @louwenjjr and myself could look into this a bit further, and alternatively @louwenjjr could add genomic information manually, but for the purpose of getting a sense of what NPLinker does, 75 genomes is certainly better than 0 genomes! 😎

OK - I'll need to tidy up the code a bit but should definitely have a new Docker image ready at some point tomorrow.
The full breakdown of the 120 genome lookups seems to be 75 successful, 30 failed matches on NCBI, and 15 failed on antiSMASH.
These are the 30 JGI IDs that don't produce NCBI matches (at least the way I'm doing it):
2563366734
2561511115
2561511039
2571042006
2563366539
2563366517
2561511034
2571042009
2565956527
2571042016
2561511114
2563366531
2563366533
2561511103
2561511038
2571042007
2561511110
2561511108
2561511105
2561511113
2563366532
2571042345
2561511109
2563366534
2565956528
2571042008
2561511107
2561511111
2517572162

and these are the pairs of original & resolved IDs which it can't find on antiSMASH:
2561511104,GCF_000702345
2515154125,GCF_000519145
2521172655,GCF_000378705
2515154186,GCF_000515015
2518285563,GCF_000374705
2814122978,GCF_006716065
2524023246,GCF_000424725
2518645624,GCF_000377065
2515154135,GCF_000514615
2548876972,GCF_000259635
2548876909,GCF_000259675
2515154193,GCF_000514915
2515154088,GCF_000515135
2518645627,GCF_000377045

That sounds like a reasonable approach to me @andrewramsay! JGI and NCBI are not fully synced, so it could well be that not everything is found at NCBI. Not entirely sure yet why those with GCF identity do not get a result from antiSMASHdb - if you have lists of these two types of errors you got, @louwenjjr and myself could look into this a bit further, and alternatively @louwenjjr could add genomic information manually, but for the purpose of getting a sense of what NPLinker does, 75 genomes is certainly better than 0 genomes! 😎

OK - I'll need to tidy up the code a bit but should definitely have a new Docker image ready at some point tomorrow.
The full breakdown of the 120 genome lookups seems to be 75 successful, 30 failed matches on NCBI, and 15 failed on antiSMASH.
These are the 30 JGI IDs that don't produce NCBI matches (at least the way I'm doing it):
2563366734
2561511115
2561511039
2571042006
2563366539
2563366517
2561511034
2571042009
2565956527
2571042016
2561511114
2563366531
2563366533
2561511103
2561511038
2571042007
2561511110
2561511108
2561511105
2561511113
2563366532
2571042345
2561511109
2563366534
2565956528
2571042008
2561511107
2561511111
2517572162

and these are the pairs of original & resolved IDs which it can't find on antiSMASH:
2561511104,GCF_000702345
2515154125,GCF_000519145
2521172655,GCF_000378705
2515154186,GCF_000515015
2518285563,GCF_000374705
2814122978,GCF_006716065
2524023246,GCF_000424725
2518645624,GCF_000377065
2515154135,GCF_000514615
2548876972,GCF_000259635
2548876909,GCF_000259675
2515154193,GCF_000514915
2515154088,GCF_000515135
2518645627,GCF_000377045

Thanks for the list Andrew, I will look into it a bit today.

Thanks for the list Andrew, I will look into it a bit today.

I think your pipeline is working nicely, as I couldn't find a way to solve these issues, the RefSeq IDs simply do not exist, or the genomes are just not included in antismash-db.
My guess for the IDs that it can't find on antiSMASH is that these are genomes that are very similar to other Salinispora genomes so they did not reach the fastANI cutoff to be selected in antismash-dbv2.

I think your pipeline is working nicely, as I couldn't find a way to solve these issues, the RefSeq IDs simply do not exist, or the genomes are just not included in antismash-db.
My guess for the IDs that it can't find on antiSMASH is that these are genomes that are very similar to other Salinispora genomes so they did not reach the fastANI cutoff to be selected in antismash-dbv2.

There's an updated Docker image ready for you to try out now, run docker pull andrewramsay/nplinker:latest to get it.
Since I changed a lot of the code dealing with the genome downloading, I'd recommend deleting any existing files for the dataset so it can start fresh. Removing these 2 folders should take care of that:
nplinker_shared/nplinker_data/pairedomics/extracted/MSV000078836
nplinker_shared/nplinker_data/pairedomics/downloads/MSV000078836

It'll take a while to download everything because there are at least a couple of HTTP requests required for each genome entry, but you can interrupt the process at any point and it should resume where it left off next time (I might look into making multiple requests in parallel to speed this up at some point).
I've tried going through the whole loading process a couple of times now and it seems to work OK.

There's an updated Docker image ready for you to try out now, run docker pull andrewramsay/nplinker:latest to get it.
Since I changed a lot of the code dealing with the genome downloading, I'd recommend deleting any existing files for the dataset so it can start fresh. Removing these 2 folders should take care of that:
nplinker_shared/nplinker_data/pairedomics/extracted/MSV000078836
nplinker_shared/nplinker_data/pairedomics/downloads/MSV000078836

It'll take a while to download everything because there are at least a couple of HTTP requests required for each genome entry, but you can interrupt the process at any point and it should resume where it left off next time (I might look into making multiple requests in parallel to speed this up at some point).
I've tried going through the whole loading process a couple of times now and it seems to work OK.

Really nice! Thanks a lot.

Really nice! Thanks a lot.


Update README.md

I added a comment about working in environments where the argv[1] is not the script name (e.g. Electron), to the .argv documentation.

Awesome, thank you.


How to manipulate RootOperationNode ?

Hi,
Given this Query Builder
const qb = db.updateTable("person").set("gender", "male");

Then,
Why this works ?
sql`${qb}`.execute(db);

But this Not ? (The RootOperationNode)
sql`${qb.compile().query}`.execute(db);

Suppose, that all I have is RootOperationNode and I need to manipulate it with sql function,
how do I manipulate it without instantiating QueryBuilders all over the place ?

You can't pass query nodes to the SQL template tag. It doesn't work because it's not supposed to work and nowhere does it say that it would work.


Unclear documentation in hyper_openssl 0.5.0 for server

Hello,
I would like to write a simple server with hyper that can support HTTPS.
I choose hyper_openssl 0.5.0 to do this but documentation is Unclear.
Could you please give me an example?

This library is only necessary for clients. On the server side, you'd just accept a TCP socket, use tokio-openssl to wrap that in an SslStream, and then pass that to https://docs.rs/hyper/0.11.27/hyper/server/struct.Http.html#method.serve_connection.

@sfackler : thanks man.


Revert "Test Add tpcds sf100 hive shapes."

Reverts apache/doris#25639

run buildall

run external

run external

run external


RDK-49931 - Refactor LNF Thunder Plugin to use NetworkManager Thunder Library (#5472)

Reason for change: Initial check for refactoring LNF Thunder Plugin to use
NetworkManager Thunder Library
Test Procedure: Run curl command to check the functionality of lost and found
Risks: Low
Priority: P1
Signed-off-by: Gururaaja ESR<EMAIL_ADDRESS>

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.1 out of 2 committers have signed the CLA.:white_check_mark: gururaajar:x: Gururaaja E S RGururaaja E S R seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


fix: extract_var_ids should handle object patterns

Adds a few tests for collect_decls and then fixes an issue with extract_var_ids

Oops... I somehow updated a submodule


Appliance Menu has changed 1911and Screen Shot needs to be updated on this doc

Compute Settings option no longer available under Configuration Blade the Local UI

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

ID: fbd63dfd-be36-c9f0-445d-bf2ca493c5a1
Version Independent ID: da2b1661-8061-b048-e0e6-b8e96592611b
Content: Manage compute network on Azure Stack Edge to access modules
Content Source: articles/databox-online/azure-stack-edge-extend-compute-access-modules.md
Service: databox
Sub-service: edge
GitHub Login: @alkohli
Microsoft Alias: alkohli

Please close I need glasses

Closing i need glasses

Thanks.


Replace ConnectionStatusBar by something more subtle

Is your feature request related to a problem? Please describe.
Limited Display Space.
Describe the solution you'd like
ConnectionStatusBar is to big and should be replaced by something less obstrusive. See discussion here: https://github.com/eclipse-kuksa/kuksa-android-companion/issues/56
Describe alternatives you've considered
None
Additional context
None
Solution Ideas:

only show ConnectionStatusBar when disconnected / remove ConnectionStatusBar when connected
-- unfortunately RamsesView can only shrink in size and not expand, instead of expanding it will add a black area. This needs to be workarounded
use a FloatingActionButtion (which is only visible while disconnected)
-- In Landscape Mode a FloatingActionButton is added to the bottom right side of the screen to open the SideSheet. This should be kept in mind when adding additional FloatingActionButtons so they don't overlap.
... other solution

I like the first idea. To only have the status bar when disconnected. How about moving the bar to the bottom of the Navigation bar as an overlay of the Ramses view so it does not have to shrink / expand?


Should we recommend limiting memory if it effects VFS cache?

In our documentation, we suggest setting a memory limit for Elasticsearch containers. However, Docker uses the memory.limit_in_bytes property of the kernel Memory Resource Controller to achieve this, which also appears to limit the amount of file cache that the process has access to.
File cache can be beneficial to Elasticsearch performance, so perhaps we should adjust our recommendation. We could either include a note about the limiting effect on file cache or remove the recommendation altogether.

Wrong repo. Nothing to see here.


Property drilling on empty object

🚀 Feature Proposal
It would make it possible to do something like this
const result = produce({}, (draft) => {draft.foo.bar.baz = 2})

where result would be
{
  foo: {
    bar: {
      baz: 2
    }
  }

Motivation
It would allow creating desired objects from empty objects without boilerplate.

There are packages that already support this (nevernull from the top of
my head).
It should not be part of Immer imho for several reasons:

It doesn't fit the philosophy where we leverage existing mutable
javascript constructs to create immutable objects
This wouldn't be polyfillable to ES5
This is not the problem immer tries to solve, and could just as well
solved by another package. making it available by default in produce would
be a matter of simple comisition from there.

On Tue, Mar 19, 2019 at 5:54 PM Adam Pietrasiak<EMAIL_ADDRESS>wrote:

🚀 Feature Proposal
It would make it possible to do something like this
const result = produce({}, (draft) => {draft.foo.bar.baz = 2})
where result would be
{
foo: {
bar: {

  baz: 2

}

}
Motivation
It would allow creating desired objects from empty objects without
boilerplate.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/mweststrate/immer/issues/337, or mute the thread
https://github.com/notifications/unsubscribe-auth/ABvGhNl2atSvbxdDzHdpODju9GXx1iPzks5vYRZPgaJpZM4b8ox6
.


Replace vision tower with DINOv2

Hi team, thanks for you great work！
I am trying to replace vision tower with DINOv2 which is provided in tinyllava-factory scripts. But have anyone evaluted its performance?

Hi. For vqa benchmarks like SQA and GQA, Dinov2 performs a bit worse than clip vit of the same model size. But we haven't evaluated it on tasks that require fine-grained/dense information, like refcoco.
We recommend you to combine Dinov2 with clip/siglip, because the combined visual encoder would take advantage of both global image-text aligned information from clip/siglip and finegrained information from Dinov2.


[Bug Report]: Bicep Lint - Warning use-resource-id-functions

Describe the bug
While deploying a Virtual Machine I'm receiving this linter message:
/home/runner/work/ResourceModules/ResourceModules/modules/Microsoft.Compute/virtualMachines/deploy.bicep(485,9) : Warning use-resource-id-functions: If property "id" represents a resource ID, it must use a symbolic resource reference, be a parameter or start with one of these functions: extensionResourceId, guid, if, reference, resourceId, subscription, subscriptionResourceId, tenantResourceId. [https://aka.ms/bicep/linter/use-resource-id-functions]

Is this something that is already been addressed?
To reproduce
Deploy a Virtual Machine from the Virtual Machines module.
Code snippet
No response
Relevant log output
No response

Did work, receiving this message:

Closing this issue as we're abandoning Bicep.

Didn't work, receiving this message:

Hey @rdtechie, sorry that I didn't respond again. Even though you closed the issue I want to respond regardless in case somebody else encounters similar issues.
From the screenshot you sent, it appeears the place where the resource ID is declared is incorrect - or to be more precise - the place where it is declared doesn't match the place where it is referenced after.
Apparently the a single element of your nicConfigurations array looks similar to
{
  ipConfigurations: (...),
  nicSuffix: (...)
}

while you expect something like
{
  ipConfigurations: (...),
  nicSuffix: (...),
  nicResourceId: (...)
}

That's why Bicep complains in this case as it doesn't find the property nicResourceId in the object you reference it from and raises that the only "available properties are 'ipConfigurations' & 'nicSuffix'".
Looking into the original suggestion a bit deeper I see now why it didn't work too. The nicConfigurations array is referenced in 2 places. First for creating the NICs and another time to reference it. In both cases, the original array is used, which is why it didn't help adding the nicResourceId output to the sub-module - the sub-modules output is simply never referenced.
To finally get rid of this 'warning' it would likely be necessary to switch the 2nd reference of the nicConfigurations to reference vm_nic instead and in that module return all reference you'd want to re-use (i.e., deleteOption & nicResourceId). In that case, the reference would look something like:
networkProfile: {
  networkInterfaces: [for (nicConfiguration, index) in vm_nic: {
    properties: {
      deleteOption: contains(nicConfiguration, 'deleteOption') ? nicConfiguration.deleteOption : 'Delete'
      primary: index == 0 ? true : false
    }
    id: nicConfiguration[index].nicResourceId
  }]
}

and the output of the vm_nic array (in the nested_networkInterface.bicep file) like
param deleteOption string // Just declared to return it again as part of the `vm_nic` output.

output deleteOption string = deleteOption
output nicResourceID string = networkInterface.outputs.resourceId

Again, I'm sorry for the late reply but wish you all the best with whatever alternative you're going with. 🚀


MODCLUSTER-823: Fix ignored aliases

Backport of https://github.com/modcluster/mod_proxy_cluster/pull/239

Upstream merged, marking Ready for review.

Thanks, merging

@jajik Don't forget to update Jira when merging - especially to 1.3.x branch - https://issues.redhat.com/browse/MODCLUSTER-823

Will do, on Monday


Bugged with Token Magic FX

When combined with MidiQOL and Token Magic FX, templates will visually be stopped by walls, but will still target tokens within its radius range but through walls. It works fine with MidiQOL by itself, but adding Token Magic FX to the mix seems to mess it up.

I took a quick look at MidiQOL and Token Magic FX. I think this works if you use v0.3.0 of Walled Templates.

In MidiQOL Workflow settings, set "Autotarget on template draw" to either "Always" or "Always - ignore defeated." This forces MidiQOL to wait for you to place the template. ("None" doesn't work, because it doesn't wait. You probably don't want the "walls block" versions because Walled Templates is going to take over that work instead.)
In Walled Templates settings, you obviously want to enable autotargeting. In this case, you probably also want to enable "walls block". Note that you can enable/disable "walls block" for a specific spell in the spell settings.

For me, this seems to work with or without Token Magic FX, and the tokens are targeted as you would expect. Even better, because Walled Templates targets as you drag the template, it is a bit easier to see what is or is not targeted.

Switching Walled Template to Always Autotarget fixed the issue! Thanks!


I don't figure out how to get sigma after I read whether paper or code?

Hope for reply, thanks.

The sigma variables for each model are additional parameters, which get optimized during training.


Fix Dependabot pre-commit check workflow

Description
This PR fixes a minor bug with the Dependabot pre-commit check workflow which lacks poetry and some other requirements which are specific to this project's pre-commit configuration. Seeks to resolve errors seen in this run: https://github.com/software-gardening/almanack/actions/runs/11783533598/job/32820878824?pr=169
What is the nature of your change?

[ ] Content additions or updates (adds or updates content)
[x] Bug fix (fixes an issue).
[ ] Enhancement (adds functionality).
[ ] Breaking change (these changes would cause existing functionality to not work as expected).

Checklist
Please ensure that all boxes are checked before indicating that this pull request is ready for review.

[x] I have read the CONTRIBUTING.md guidelines.
[x] My code follows the style guidelines of this project.
[x] I have performed a self-review of my own contributions.
[x] I have commented my content, particularly in hard-to-understand areas.
[ ] I have made corresponding changes to related documentation (outside of book content).
[x] My changes generate no new warnings.
[x] New and existing tests pass locally with my changes.
[ ] I have added tests that prove my additions are effective or that my feature works.
[x] I have deleted all non-relevant text in this pull request template.

Yes - that's correct! I found that the pre-commit workflow was skipped for this PR, and so the additional change was necessary to make that work. Apologies I didn't mention this within the PR description (I think I miscalculated based on the title aligning with that goal).


Flutter and android-studio snaps update on Ubuntu Java >= 11 or gradle > 5

Steps to Reproduce

I had flutter and android studio running well before the last update, flutter doctor was all green. (snaps)
Ubuntu 20.04 updated the snaps
2a) Android studio didn't reset (it assumed prior configurations)
I updated the dart and flutter plugins on android studio
Flutter didn't run anymore on android-studio.
After a lot of setting/unseting $JAVA_HOME, and changing Gradle and JAVA versions I came to the following conclusions:

new version of flutter only worked with open-jdk, not oracle java
it worked with java 11 but not with java 14
or it worked with 14 if I set gradle manually to version > 6
now it's working but even now flutter doctor says I don't have the licenses accepted.

Logs

Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel dev, 1.23.0-18.0.pre, on Linux, locale pt_PT.UTF-8)
[!] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
    ✗ Android license status unknown.
      Run `flutter doctor --android-licenses` to accept the SDK licenses.
      See https://flutter.dev/docs/get-started/install/linux#android-setup for
      more details.
[✓] Linux toolchain - develop for Linux desktop
[!] Android Studio (not installed)
[✓] Connected device (1 available)

! Doctor found issues in 2 categories.

`flutter doctor --android-licenses`
Exception in thread "main" java.lang.NoClassDefFoundError: javax/xml/bind/annotation/XmlSchema
	at com.android.repository.api.SchemaModule$SchemaModuleVersion.<init>(SchemaModule.java:156)
	at com.android.repository.api.SchemaModule.<init>(SchemaModule.java:75)
	at com.android.sdklib.repository.AndroidSdkHandler.<clinit>(AndroidSdkHandler.java:81)
	at com.android.sdklib.tool.sdkmanager.SdkManagerCli.main(SdkManagerCli.java:73)
	at com.android.sdklib.tool.sdkmanager.SdkManagerCli.main(SdkManagerCli.java:48)
Caused by: java.lang.ClassNotFoundException: javax.xml.bind.annotation.XmlSchema
	at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581)
	at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
	at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522)
	... 5 more

Current configuration with android studio working and flutter working but no licenses:

[✓] Flutter (Channel dev, 1.23.0-18.0.pre, on Linux, locale pt_PT.UTF-8)
    • Flutter version 1.23.0-18.0.pre at /home/luis/snap/flutter/common/flutter
    • Framework revision 37ebe3d82a (4 days ago), 2020-10-13 10:52:23 -0700
    • Engine revision<PHONE_NUMBER>
    • Dart version 2.11.0 (build 2.11.0-213.0.dev)

[!] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
    • Android SDK at /home/luis/Android/Sdk
    • Platform android-30, build-tools 30.0.2
    • Java binary at: /usr/bin/java
    • Java version OpenJDK Runtime Environment (build
      11.0.8+10-post-Ubuntu-0ubuntu120.04)
    ✗ Android license status unknown.
      Run `flutter doctor --android-licenses` to accept the SDK licenses.
      See https://flutter.dev/docs/get-started/install/linux#android-setup for
      more details.

[✓] Linux toolchain - develop for Linux desktop
    • clang version 6.0.0-1ubuntu2 (tags/RELEASE_600/final)
    • cmake version 3.10.2
    • ninja version 1.8.2
    • pkg-config version 0.29.1

[!] Android Studio (not installed)
    • Android Studio not found; download from
      https://developer.android.com/studio/index.html
      (or visit https://flutter.dev/docs/get-started/install/linux#android-setup
      for detailed instructions).

[✓] Connected device (1 available)
    • Linux (desktop) • linux • linux-x64 • Linux

! Doctor found issues in 2 categories.

I have exactly the same issue

Hi @lapisdecor
Can you try with JDK 8 please :

sudo apt install openjdk-8-jre-headless

Update your $JAVA_HOME

flutter doctor --android-licenses

luis@u18:~$ sudo apt install openjdk-8-jre-headless
[sudo] senha para luis:
A ler as listas de pacotes... Pronto
A construir árvore de dependências
A ler a informação de estado... Pronto
Pacotes sugeridos:
  fonts-dejavu-extra fonts-ipafont-gothic fonts-ipafont-mincho
  fonts-wqy-microhei fonts-wqy-zenhei
Serão instalados os seguintes NOVOS pacotes:
  openjdk-8-jre-headless
0 pacotes actualizados, 1 pacotes novos instalados, 0 a remover e 3 não actualizados.
É necessário obter 27,5 MB de arquivos.
Após esta operação, serão utilizados 101 MB adicionais de espaço em disco.
Obter:1 http://pt.archive.ubuntu.com/ubuntu focal-updates/universe amd64 openjdk-8-jre-headless amd64 8u265-b01-0ubuntu2~20.04 [27,5 MB]
Obtidos 27,5 MB em 14s (1944 kB/s)
A seleccionar pacote anteriormente não seleccionado openjdk-8-jre-headless:amd64
.
(A ler a base de dados ... 250354 ficheiros e directórios actualmente instalados
.)
A preparar para desempacotar .../openjdk-8-jre-headless_8u265-b01-0ubuntu2~20.04
_amd64.deb ...
A descompactar openjdk-8-jre-headless:amd64 (8u265-b01-0ubuntu2~20.04) ...
A instalar openjdk-8-jre-headless:amd64 (8u265-b01-0ubuntu2~20.04) ...
update-alternatives: a usar /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/orbd para
disponibilizar /usr/bin/orbd (orbd) em modo auto
update-alternatives: a usar /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/servertool
 para disponibilizar /usr/bin/servertool (servertool) em modo auto
update-alternatives: a usar /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/tnameserv
para disponibilizar /usr/bin/tnameserv (tnameserv) em modo auto
update-binfmts: warning: current package is openjdk-11, but binary format alread
y installed by openjdk-14
luis@u18:~$ which java
/usr/bin/java
luis@u18:~$ echo $JAVA_HOME

luis@u18:~$ java --version
openjdk 11.0.8 2020-07-14
OpenJDK Runtime Environment (build 11.0.8+10-post-Ubuntu-0ubuntu120.04)
OpenJDK 64-Bit Server VM (build 11.0.8+10-post-Ubuntu-0ubuntu120.04, mixed mode, sharing)
luis@u18:~$ flutter doctor --android-licenses
Exception in thread "main" java.lang.NoClassDefFoundError: javax/xml/bind/annotation/XmlSchema
	at com.android.repository.api.SchemaModule$SchemaModuleVersion.<init>(SchemaModule.java:156)
	at com.android.repository.api.SchemaModule.<init>(SchemaModule.java:75)
	at com.android.sdklib.repository.AndroidSdkHandler.<clinit>(AndroidSdkHandler.java:81)
	at com.android.sdklib.tool.sdkmanager.SdkManagerCli.main(SdkManagerCli.java:73)
	at com.android.sdklib.tool.sdkmanager.SdkManagerCli.main(SdkManagerCli.java:48)
Caused by: java.lang.ClassNotFoundException: javax.xml.bind.annotation.XmlSchema
	at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581)
	at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
	at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522)
	... 5 more
luis@u18:~$ whereis java
java: /usr/bin/java /usr/share/java /usr/share/man/man1/java.1.gz
luis@u18:~$ micro .basrc
luis@u18:~$ cd
luis@u18:~$ micro .bashrc
luis@u18:~$ source .bashrc
luis@u18:~$ whereis java
java: /usr/bin/java /usr/share/java /usr/share/man/man1/java.1.gz
luis@u18:~$ echo $JAVA_HOME
/usr/lib/jvm/java-8-openjdk-amd64

luis@u18:~$ java --version
openjdk 11.0.8 2020-07-14
OpenJDK Runtime Environment (build 11.0.8+10-post-Ubuntu-0ubuntu120.04)
OpenJDK 64-Bit Server VM (build 11.0.8+10-post-Ubuntu-0ubuntu120.04, mixed mode, sharing)

luis@u18:~$ sudo apt remove openjdk-11-jre-headless
[sudo] senha para luis:
A ler as listas de pacotes... Pronto
A construir árvore de dependências
A ler a informação de estado... Pronto
Serão REMOVIDOS os seguintes pacotes:
  default-jre-headless openjdk-11-jre-headless
0 pacotes actualizados, 0 pacotes novos instalados, 2 a remover e 3 não actualizados.
Após esta operação, será libertado 171 MB de espaço em disco.
Deseja continuar? [S/n]
(A ler a base de dados ... 250585 ficheiros e directórios actualmente instalados
.)
...

uis@u18:~$ java --version
Unrecognized option: --version
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.
luis@u18:~$ which java
/usr/bin/java
luis@u18:~$ java -version
openjdk version "1.8.0_265"
OpenJDK Runtime Environment (build 1.8.0_265-8u265-b01-0ubuntu2~20.04-b01)
OpenJDK 64-Bit Server VM (build 25.265-b01, mixed mode)
luis@u18:~$ flutter doctor --android-licenses
Warning: File /home/luis/.android/repositories.cfg could not be loaded.
4 of 6 SDK package licenses not accepted. 100% Computing updates...
Review licenses that have not been accepted (y/N)? y

1/4: License android-googletv-license:
---------------------------------------
Terms and Conditions

This is the Google TV Add-on for the Android Software Development Kit License Agreement.

1. Introduction

1.1 The Google TV Add-on for the Android Software Development Kit (referred to in this License Agreement as the "Google TV Add-on" and specifically including the Android system files, packaged APIs, and Google APIs add-ons) is licensed to you subject to the terms of this License Agreement. This License Agreement forms a legally binding contract between you and Google in relation to your use of the Google TV Add-on.
(...)
---------------------------------------
Accept? (y/N): y
All SDK package licenses accepted

luis@u18:~$ flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel dev, 1.23.0-18.0.pre, on Linux, locale pt_PT.UTF-8)
[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
[✓] Linux toolchain - develop for Linux desktop
[!] Android Studio (not installed)
[✓] Connected device (1 available)

! Doctor found issues in 1 category.

on the other side of the road, what happens now on android-studio:
Launching lib/main.dart on sdk gphone x86 in debug mode...
Running Gradle task 'assembleDebug'...

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:compileDebugKotlin'.
> Kotlin could not find the required JDK tools in the Java installation '/usr/lib/jvm/java-8-openjdk-amd64/jre' used by Gradle. Make sure Gradle is running on a JDK, not JRE.

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

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

BUILD FAILED in 9s
Exception: Gradle task assembleDebug failed with exit code 1

Hi @lapisdecor
Can you try :
sudo apt install openjdk-8-jdk

To switch between version execute the following two commands while selecting the Java version you require:
sudo update-alternatives --config java
sudo update-alternatives --config javac

but on the desktop side:

luis@u18:~/AndroidStudioProjects/flutter_app6527$ flutter run
Launching lib/main.dart on Linux in debug mode...
Building Linux application...
Waiting for Linux to report its views...                             3ms
Syncing files to device Linux...                                   159ms

Flutter run key commands.
r Hot reload. 🔥🔥🔥
R Hot restart.
h Repeat this help message.
d Detach (terminate "flutter run" but leave application running).
c Clear the screen
q Quit (terminate the application on the device).
An Observatory debugger and profiler on Linux is available at:
http://<IP_ADDRESS>:34945/IToY4Tl0Eg8=/
Lost connection to device.

it works ok

luis@u18:~$ sudo apt install openjdk-8-jdk
[sudo] senha para luis:
A ler as listas de pacotes... Pronto
A construir árvore de dependências
A ler a informação de estado... Pronto
The following additional packages will be installed:
  fonts-dejavu-extra libatk-wrapper-java libatk-wrapper-java-jni libxt-dev
( ....)
luis@u18:~$ flutter doctor -v
[✓] Flutter (Channel dev, 1.23.0-18.0.pre, on Linux, locale pt_PT.UTF-8)
    • Flutter version 1.23.0-18.0.pre at /home/luis/snap/flutter/common/flutter
    • Framework revision 37ebe3d82a (4 days ago), 2020-10-13 10:52:23 -0700
    • Engine revision<PHONE_NUMBER>
    • Dart version 2.11.0 (build 2.11.0-213.0.dev)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
    • Android SDK at /home/luis/Android/Sdk
    • Platform android-30, build-tools 30.0.2
    • Java binary at: /usr/lib/jvm/java-8-openjdk-amd64/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_265-8u265-b01-0ubuntu2~20.04-b01)
    • All Android licenses accepted.

[✓] Linux toolchain - develop for Linux desktop
    • clang version 6.0.0-1ubuntu2 (tags/RELEASE_600/final)
    • cmake version 3.10.2
    • ninja version 1.8.2
    • pkg-config version 0.29.1

[!] Android Studio (not installed)
    • Android Studio not found; download from
      https://developer.android.com/studio/index.html
      (or visit https://flutter.dev/docs/get-started/install/linux#android-setup
      for detailed instructions).

[✓] Connected device (1 available)
    • Linux (desktop) • linux • linux-x64 • Linux

! Doctor found issues in 1 category.
luis@u18:~$ sudo update alternatives --config java
sudo: update: comando não encontrado
luis@u18:~$ sudo update-alternatives --config java
Existe apenas uma alternativa no grupo de ligação java (que disponibiliza /usr/bin/java: /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java
Nada para configurar.

luis@u18:~$ echo $JAVA_HOME
/usr/lib/jvm/java-8-openjdk-amd64

Same result. I wonder why it worked on android-studio with no JAVA_HOME exported when using the java 11 I had by 'default'.
Now android-studio just says:
FAILURE: Build failed with an exception.

What went wrong:
Execution failed for task ':app:compileDebugKotlin'.

Kotlin could not find the required JDK tools in the Java installation '/usr/lib/jvm/java-8-openjdk-amd64/jre' used by Gradle. Make sure Gradle is running on a JDK, not JRE.

NOTE: When I say I test android studio, I'm testing it on the emulator, not desktop.

Removing the export JAVA_HOME everithing works, except flutter doctor doesn't recognize Android Studio is installed
luis@u18:~$ echo $JAVA_HOME

luis@u18:~$ which java
/usr/bin/java
luis@u18:~$ java -version
openjdk version "1.8.0_265"
OpenJDK Runtime Environment (build 1.8.0_265-8u265-b01-0ubuntu2~20.04-b01)
OpenJDK 64-Bit Server VM (build 25.265-b01, mixed mode)
luis@u18:~$ flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel dev, 1.23.0-18.0.pre, on Linux, locale pt_PT.UTF-8)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
[✓] Linux toolchain - develop for Linux desktop
[!] Android Studio (not installed)
[✓] Connected device (1 available)

! Doctor found issues in 1 category.

If you have Android Studio 4.1 ,This was reported in #67986, should be fixed soon in the stable channel with cherry-pick release.
You can try this too : https://github.com/flutter/flutter/issues/67986#issuecomment-709598076

Nice one, I think I'll wait for the fix thow. Thank you.

Hi @lapisdecor
Given your last comment I feel safe to close this issue.
Thank you

I must agree that installing flutter from snap on fresh Ubuntu 20.04 has several issues. Getting it up and running requires quite a few steps. My list of issues:

Android Studio has no Android CLI tools SDK installed by default (needed to accept licenses, otherwise you get XmlSchema exception
Had to manually locate dart-sdk folder and configure Project settings in Android Studio
flutter doctor was reporting the Android studio is not installed. Had to run flutter config --android-studio-dir=/home/user/Software/android-studio/ (my installation folder)
Android Studio is missing Menu option "Open for editing in Android Studio"


Accessing MemoryDataStore

Is there a certain way to access MemoryDataStore? I would like to use functions such as getUserByName, and others, without storing the user data once more.

Are you trying to access the data store of a RTM client? If so, the client has a dataStore field for that.
If you are referring to accessing the MemoryDataStore class, it's exported with the rest of this module; require('@slack/client').MemoryDataStore

Data store of an RTM client, yeah.
I've tried require('@slack/client').MemoryDataStore, however, I'm not seeing where to go from there.

Do you want to get the default data store attached to the RTM client or pass in one that you'll create / configure yourself?

The default one.

So, the RtmClient accepts a dataStore option. That option must be a DataStore object-- more specifically, it must be a type that inherits the abstract DataStore class. So, in our case, MemoryDataStore. Additionally, MemoryDataStore doesn't take any parameters to construct.
var rtm = new Slack.RtmClient(TOKEN, {
    // If you wanted, you could store the data store in it's own variable. Since the RTM client
    // provides a field for it, I'll going to keep with using that.
    dataStore: new MemoryDataStore()
});

From there, using the data store is simple. You can access it via the client's dataStore field (or by variable, in the case you chose to do that).
For example, in the case that I wanted to get data about a user whenever they send a message, I'd want to use the getUserById method of the MemoryDataStore.
rtm.on(RTM_EVENTS.MESSAGE, function(data) {
    var user = rtm.dataStore.getUserById(data.user);
    console.log(user.name + ' said "' + data.text + '"');
});

As of writing, I don't believe there are any docs on what methods MemoryDataStore contains (though that's being worked on). For now, I'd recommend looking at the source for the object, /lib/data-store/memory-data-store.js.

@l12s "default data store attached to the RTM client"? The only default data store I see is for the legacy client.
(Also, I just noticed that the jsdoc for the constructor of the RTM client lists opts.dataStore twice. I'm a lazy-butt and don't wanna submit a pull request for it.)

@Everesty Thank you.

@Everesty - good catch, I play around with a version that I've set up with some defaults, so I was getting that mixed up with the actual implementation.
I'll push a change to fix that JSDoc issue momentarily - thanks :)


feat(Footer): Change approach to handling, add SG footer

move global footer to private components
promote db footer to be the primary footer exposed from the library
add Singapore footer links
alignments of copy for both footers

BREAKING CHANGE: no footer is available on tenants folders anymore
Migration guide:
Before:
import { Footer as JobStreetFooter } from 'seek-asia-style-guide/jobStreet';
import { Footer as JobsDBFooter } from 'seek-asia-style-guide/jobsDB';
...

After:
import { Footer } from 'seek-asia-style-guide/react';

<Footer
  country={currentCountry}
  data-automation={currentTenant}
  language={currentLocale}
  isExpandedVersion={isRouteAtHome && showHomePage}
  showHeaderActionTrayOffset={!isRouteAtJobDetails}
/>

Props interface is unchanged compared to DB footer Interface.
Diff is quite big due to the fact that jobsdb Footer moved in place of a root Footer, but actual files are unchanged.
As a followups will need to move localisations later on outside of the brand folders. Just decided not to overwhelm with it in this PR.
We also might need to add tenant dimension to it in the future and potentially even move out links management to the app itself
Trello card: https://trello.com/c/wOQSW3k8/700-js-srp-5-jobstreet-footer

preview: http://seek-asia-style-guide--3e1aa731487ec753c376c8025c99acb4df46b0fe.surge.sh/footer/

in the preview env: 👇

in the production env: 👇

it seem thai and indonesia flag went missing

fun question, i found that the script for copy is as below:
  F
} from 'seek-asia-style-guide/react';

<F linkRenderer={function(){}} />```

😏 is it mean `<F />` for footer 😆

@ChanJit yeah, I noticed that too, it's some odd problem with module imports which I'm not sure how to fix. It will go away when we move localisation inside of the footer itself later on, don't want to overwhelm people with already crazy diff here, so just restraining on fixing it. Considering those are not a prod ones, I don't mind them to be broken for a while.

@ChanJit yeah, I noticed that too, it's some odd problem with module imports which I'm not sure how to fix. It will go away when we move localisation inside of the footer itself later on, don't want to overwhelm people with already crazy diff here, so just restraining on fixing it. Considering those are not a prod ones, I don't mind them to be broken for a while.

well @kosanna , should we at least have a trello card that will be follow up this problem ? 😅

Tech debt card is on me

Flags are fixed by changing the imports, refactoring should fool up post release