[Draft] [R] Add QuantileDMatrix creation from dense matrices

ref https://github.com/dmlc/xgboost/issues/9810
This PR adds a wrapper over QuantileDMatrix for dense matrix inputs.
I am not very sure that I'm implementing all of this correctly so would be ideal if a maintainer could take a deep look.
I have some doubts about how this class (QuantileDMatrix) is meant to be created:

Should feature types / names / etc. be added to the proxy dmatrix as part of the iterations?
Should labels and/or bounds be set as part of the iterations? If not, are categorical features supported for this class?
If the call to XGQuantileDMatrixCreateFromCallback fails, returning a non-zero code, does the proxy dmatrix still need to be freed manually through XGDMatrixFree?
Is there something that would currently work with a regular DMatrix but not with a QuantileDMatrix, and which would need to be checked on the R side instead of passing things to the C functions?

Also a small note: there's a PR which hasn't yet been merged as it's currently failing MSVC jobs, which introduces some refactorings around the handling of 'missing' parameter in the JSON configs. After such refactoring is introduced, it should also be used as part of the code introduced here, as otherwise missing values in integer matrices will not be handled correctly.

Let me briefly answer some the of questions first,  then try to come up with improved documents.

Should feature types / names / etc. be added to the proxy dmatrix as part of the iterations?

yes.

Should labels and/or bounds be set as part of the iterations? If not, are categorical features supported for this class?

yes, it should be part of the iterations. Yes, categorical features are supported.

If the call to XGQuantileDMatrixCreateFromCallback fails, returning a non-zero code, does the proxy dmatrix still need to be freed manually through XGDMatrixFree?

Yes, everything created successfully should be freed accordingly. If the proxy is created successfully, it should be freed, regardless of how it's used.

Is there something that would currently work with a regular DMatrix but not with a QuantileDMatrix,

The QDM works with the hist tree method (default) for training and normal prediction. It's used to conserve memory for training.

and which would need to be checked on the R side instead of passing things to the C functions?

I usually just let the C functions emit errors.

Now I'm confused.
If I understand it correctly, creating a QuantileDMatrix from a dense input involves setting the proxy dmatrix 4 times.
From some quick tests, it seems to be possible to pass label by calling XGDMatrixSetInfoFromInterface after the QuantileDMatrix has been created with argument data only (at least for cases without categorical data).
If the label were to be set on the proxy dmatrix at every iterator call, wouldn't that result in more work being done compared to setting it after? Aren't there conversions and memory copies happening inside those calls?
Also, just to be sure - if one is supposed to set the feature names and types on the proxy dmatrix at every iterator call, does that mean that one can pass different subsets of columns in different iterations?

By the way, what would happen in a case in which XGQuantileDMatrixCreateFromCallback returns an error code, and then XGDMatrixFree after that also returns an error code? Can that happen? How/what should be reported to the user then?

Let me write some documents for the QDM internal, it's a special case for the iterator interface, which is also used by external memory support. As a result, some of the things seem redundant, but we kept it to simplify the code so that it can work with both use cases without any special handling. So, to answer the question of whether it can accept a subset of samples, yes, but it's for external memory support.

By the way, what would happen in a case in which XGQuantileDMatrixCreateFromCallback returns an error code, and then XGDMatrixFree after that also returns an error code? Can that happen?

If you are trying to free the proxy, then should succeed assuming the proxy was successfully created. If you are trying to free the QDM, then it should fail.

How/what should be reported to the user then?

If FromCallback returns -1, then it's likely that something went wrong during iteration, which means an error in the next or reset function. In this case:

Report the errors from callbacks. No need to free the unsuccessfully created QDM, (no harm in doing it either since it will fail anyway). See: https://github.com/dmlc/xgboost/blob/b3700bbb3fc057f4e6948a493b92c3e6ec28cc51/src/c_api/c_api.cc#L312 , if the Create static method fails, there's no memory leak since there's no pointer being allocated.
If no error from reset/next callbacks, then report the error from FromCallback as usual like the original DMatrix class.

it can accept a subset of samples, yes, but it's for external memory support.

And yes, the QDM indeed can take on batches on initialization. See quantile_data_iterator.py in demo. It's lesser known but can be helpful when a user doesn't have the memory capacity to construct the QDM while holding the original data in memory.

Ref: https://github.com/dmlc/xgboost/issues/9734#issuecomment-1849023783

Would it be possible to have C functions to create these QuantileDMatrices from array_interface strings for dense/csr data sources + required parameters? Is there some limitation that would make such an approach not work?

it can no longer take on iterators as described in https://github.com/dmlc/xgboost/pull/9864#issuecomment-1851120592.

Is this still draft?

Is this still draft?

Yes, and I'm going to create a new MR as I see this kind of functionality would need to be coded differently.

Closing in favor of bigger PR that follows the same approach as in the python interface: https://github.com/dmlc/xgboost/pull/9913


configure for frozen fine-tuning

hi, thanks for the great work. I just wonder if you can provide the configure of frozen training you mentioned in table 2. How many epochs and what lr did you use? Thank you!

@TengdaHan I would like to know the detail configuration to reproduce the accuracy on ucf101 dataset, any plan to release the train scrips?

Sorry for the delay, I just updated some evaluation code for your reference. See here https://github.com/TengdaHan/MemDPC/tree/master/eval
Let me know if there are any problems.

Why do you use dropout = 0.9 in MemDPC but 0.5 in your previous work DPC? I found that most video self-supervised work use dropout=0.5, did you find something interesting?

I found dropout = 0.9 for finetuning entire network gives much better classification accuracy (experimented dropout = 0.5, 0.7, 0.9). We re-evaluate DPC weights under the exact same setting in MemDPC paper Table 1, and it also gets better results.
Just curious, can you let me know which work(s) uses dropout = 0.5? I found many papers didn't mention this detail.

thanks, https://arxiv.org/pdf/2003.02692 (PSP) https://arxiv.org/pdf/2008.03800 (CVRL), CMC, VCOP used dropout = 0.5. I have tried 0.5 vs 0.9 in my code, finding that 0.5 performs way much better than 0.9. So I'm very curious about your config.
Maybe is because you use final_bn and other methods (including mine) didn't use.

On my side, finetuning without the final_bn still works better with 0.9 dropout. I think it's because UCF101 and HMDB51 are too small and very easy to overfit the training set. The effect of large dropout will show up when you train the classifier for longer.
Thank you for letting me know.


Add libsqlite3-dev dependency to python compilation

Summary

Installs libsqlite3-dev on builders used for compiling Python used as pre-builds for the cpython buildpack.
This solves an issue where the sqlite3 module can not be imported since the _sqlite3 module is not being provided if the corresponding libraries are not available at install time.
Use Cases
This fixes use cases where a Python application might try to use the included sqlite3 library.
Example
1. Compiled Python using the builder as detailed in the compile Action README.
2. Running a python prompt built without this change:
@matthiaswenz ➜ /workspaces/bionic/python_sans_sqlite $ LD_LIBRARY_PATH=./lib bin/python3
Python 3.10.7 (main, Dec  2 2022, 17:14:18) [GCC 7.5.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import sqlite3
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/workspaces/bionic/python_sans_sqlite/lib/python3.10/sqlite3/__init__.py", line 57, in <module>
    from sqlite3.dbapi2 import *
  File "/workspaces/bionic/python_sans_sqlite/lib/python3.10/sqlite3/dbapi2.py", line 27, in <module>
    from _sqlite3 import *
ModuleNotFoundError: No module named '_sqlite3'

Detailed list of modules available in python
@matthiaswenz ➜ /workspaces/bionic/python_sans_sqlite $ LD_LIBRARY_PATH=./lib bin/python3
Python 3.10.7 (main, Dec  2 2022, 17:14:18) [GCC 7.5.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import sqlite3
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/workspaces/bionic/python_sans_sqlite/lib/python3.10/sqlite3/__init__.py", line 57, in <module>
    from sqlite3.dbapi2 import *
  File "/workspaces/bionic/python_sans_sqlite/lib/python3.10/sqlite3/dbapi2.py", line 27, in <module>
    from _sqlite3 import *
ModuleNotFoundError: No module named '_sqlite3'
>>> help('modules')

Please wait a moment while I gather a list of all available modules...

/workspaces/bionic/python_sans_sqlite/lib/python3.10/site-packages/_distutils_hack/__init__.py:33: UserWarning: Setuptools is replacing distutils.
  warnings.warn("Setuptools is replacing distutils.")
__future__          _testmultiphase     gettext             sched
_abc                _thread             glob                secrets
_aix_support        _threading_local    graphlib            select
_ast                _tkinter            grp                 selectors
_asyncio            _tracemalloc        gzip                setuptools
_bisect             _warnings           hashlib             shelve
_blake2             _weakref            heapq               shlex
_bootsubprocess     _weakrefset         hmac                shutil
_bz2                _xxsubinterpreters  html                signal
_codecs             _xxtestfuzz         http                site
_codecs_cn          _zoneinfo           idlelib             smtpd
_codecs_hk          abc                 imaplib             smtplib
_codecs_iso2022     aifc                imghdr              sndhdr
_codecs_jp          antigravity         imp                 socket
_codecs_kr          argparse            importlib           socketserver
_codecs_tw          array               inspect             spwd
_collections        ast                 io                  sqlite3
_collections_abc    asynchat            ipaddress           sre_compile
_compat_pickle      asyncio             itertools           sre_constants
_compression        asyncore            json                sre_parse
_contextvars        atexit              keyword             ssl
_crypt              audioop             lib2to3             stat
_csv                base64              linecache           statistics
_ctypes             bdb                 locale              string
_ctypes_test        binascii            logging             stringprep
_curses             binhex              lzma                struct
_curses_panel       bisect              mailbox             subprocess
_datetime           builtins            mailcap             sunau
_dbm                bz2                 marshal             symtable
_decimal            cProfile            math                sys
_distutils_hack     calendar            mimetypes           sysconfig
_elementtree        cgi                 mmap                syslog
_functools          cgitb               modulefinder        tabnanny
_gdbm               chunk               multiprocessing     tarfile
_hashlib            cmath               netrc               telnetlib
_heapq              cmd                 nis                 tempfile
_imp                code                nntplib             termios
_io                 codecs              ntpath              test
_json               codeop              nturl2path          textwrap
_locale             collections         numbers             this
_lsprof             colorsys            opcode              threading
_lzma               compileall          operator            time
_markupbase         concurrent          optparse            timeit
_md5                configparser        os                  tkinter
_multibytecodec     contextlib          ossaudiodev         token
_multiprocessing    contextvars         pathlib             tokenize
_opcode             copy                pdb                 trace
_operator           copyreg             pickle              traceback
_osx_support        crypt               pickletools         tracemalloc
_pickle             csv                 pip                 tty
_posixshmem         ctypes              pipes               turtle
_posixsubprocess    curses              pkg_resources       turtledemo
_py_abc             dataclasses         pkgutil             types
_pydecimal          datetime            platform            typing
_pyio               dbm                 plistlib            unicodedata
_queue              decimal             poplib              unittest
_random             difflib             posix               urllib
_sha1               dis                 posixpath           uu
_sha256             distutils           pprint              uuid
_sha3               doctest             profile             venv
_sha512             email               pstats              warnings
_signal             encodings           pty                 wave
_sitebuiltins       ensurepip           pwd                 weakref
_socket             enum                py_compile          webbrowser
_sre                errno               pyclbr              wsgiref
_ssl                faulthandler        pydoc               xdrlib
_stat               fcntl               pydoc_data          xml
_statistics         filecmp             pyexpat             xmlrpc
_string             fileinput           queue               xxlimited
_strptime           fnmatch             quopri              xxlimited_35
_struct             fractions           random              xxsubtype
_symtable           ftplib              re                  zipapp
_sysconfigdata__linux_x86_64-linux-gnu functools           readline            zipfile
_testbuffer         gc                  reprlib             zipimport
_testcapi           genericpath         resource            zlib
_testimportmultiple getopt              rlcompleter         zoneinfo
_testinternalcapi   getpass             runpy

Enter any module name to get more help.  Or, type "modules spam" to search
for modules whose name or summary contain the string "spam".

>>>

3.   Or, type "modules spam" to search
for modules whose name or summary contain the string "spam".

>>>

Checklist

[x] I have viewed, signed, and submitted the Contributor License Agreement.
[x] I have linked issue(s) that this PR should close using keywords or the Github UI (See docs)
[ ] I have added an integration test, if necessary.
[x] I have reviewed the styleguide for guidance on my code quality.
[x] I'm happy with the commit history on this PR (I have rebased/squashed as needed).

@matthiaswenz thanks for the contribution! (and sorry it's not currently working). Are you able to sign a CLA? Either a personal one or a corporate one should suffice. Let us know if you encounter issues with the EasyCLA bot above.
@joshuatcasey I think it's a regression - I haven't validated this but I believe this buildpack used to work with sqllite. I agree that it's great to see the new dependencies work getting contributions. It's a validation of the much improved design and architecture :)

Signed the CLA; Thanks @joshuatcasey & @robdimsdale for the quick review and helping get this in!

@joshuatcasey

I wonder if in the future when we add libraries if we should include some sort of test. In any case, this compilation method should be much more explicit than in the past.

Yup, 100% agreed. For now I'm prioritizing fixing regressions from missing libraries and not blocking them on adding tests - which could be fairly complex in some cases (like testing integration with sqlite)

Yup, 100% agreed. For now I'm prioritizing fixing regressions from missing libraries and not blocking them on adding tests - which could be fairly complex in some cases (like testing integration with sqlite)

Makes sense. I was thinking the test would be as simple as checking whether the library is importable - not so much an integration test against a running sqlite instances.


Fix defmt in DefaultHandler

Alternative to https://github.com/esp-rs/esp-pacs/pull/161

Probably even just logging the interrupt number would be good enough here (when using defmt)

Probably even just logging the interrupt number would be good enough here (when using defmt)

It would but I expect this to be rare and spelling out the interrupt is much better UX in my opinion.


not support "linux-arm64-gnu"

not support "linux-arm64-gnu"

Thanks for pointing this out!
This has been implemented in #63, and published in<EMAIL_ADDRESS>and<EMAIL_ADDRESS>


add Kind to local-machine solutions

Signed-off-by: Jintao Zhang<EMAIL_ADDRESS>fix #13176
/cc @neolit123

https://deploy-preview-13177--kubernetes-io-master-staging.netlify.com/docs/setup/pick-right-solution/#community-supported-tools

Kind already exists in the Ecosystem Tools section. If it's being moved to the community supported tools sections, we should perhaps remove from the ecosystem tools. If it's in both places, at least let's make the text the same in both sections.

@karthequian  Thanks. I have removed the second section.


License inconsistency

On the main page it seems that the license is Apache License 2, while in your license file it said
differently.
What is the exact license ?

What does say the license file?

Hi @doribd
Could you please point us to the files/resources you are referring to? The license for OrientDB Community Edition is Apache 2.0
Thanks
Luigi

hi @luigidellaquila
I looked for that once again, i can't see it now, please close this issue.
Regards,
Dor

Great, closing then
Thanks
Luigi


Clients with time skew (possible replay-attackers)

hi
mtproxy dont work until reset server!
log message is "Clients with time skew (possible replay-attackers)"
how to resolve this problom?

Please check your server time

Please check your server time

timedatectl
Local time: Mon 2020-04-20 12:43:39 EDT
Universal time: Mon 2020-04-20 16:43:39 UTC
RTC time: Mon 2020-04-20 16:37:30
Time zone: America/New_York (EDT, -0400)
NTP enabled: yes
NTP synchronized: no
RTC in local TZ: no
DST active: yes
Last DST change: DST began at
Sun 2020-03-08 01:59:59 EST
Sun 2020-03-08 03:00:00 EDT
Next DST change: DST ends (the clock jumps one hour backwards) at
Sun 2020-11-01 01:59:59 EDT
Sun 2020-11-01 01:00:00 EST
what should I do now?

If the time is bad, please, correct it

If the time is bad, please, correct it

how should i recognize the "bad" time? what's the problem that you ask me to seek?
plz tell me what should I do now to correct it?

Just compare the time on your server with the actual time. The difference should be < 1 min

Just compare the time on your server with the actual time. The difference should be < 1 min

server location is germany
my location is iran
timezone server is america/ newyork
now what should i do?

Try to put IGNORE_TIME_SKEW=True in the config.py and restart the proxy

config.txt
is god config?

PORT = 443

# name -> secret (32 hex chars)
USERS = {
    "komeyl":  "93f444b9f9df4cf8bdec8122d0e4a966",
}

MODES = {
	# Classic mode, easy to detect
    "classic": False,

    # Makes the proxy harder to detect
    # Can be incompatible with very old clients
    "secure": True,

    # Makes the proxy even more hard to detect
    # Can be incompatible with old clients
    "tls": True
}

# The domain for TLS mode, bad clients are proxied there
# Use random existing domain, proxy checks it on start
TLS_DOMAIN = "alexbers.com"

# Tag for advertising, obtainable from @MTProxybot
# AD_TAG = "3c09c680b76ee91a4c25ad51f742267d"
IGNORE_TIME_SKEW = True

PORT = 443

# name -> secret (32 hex chars)
USERS = {
    "komeyl":  "93f444b9f9df4cf8bdec8122d0e4a966",
}

MODES = {
	# Classic mode, easy to detect
    "classic": False,

    # Makes the proxy harder to detect
    # Can be incompatible with very old clients
    "secure": True,

    # Makes the proxy even more hard to detect
    # Can be incompatible with old clients
    "tls": True
}

# The domain for TLS mode, bad clients are proxied there
# Use random existing domain, proxy checks it on start
TLS_DOMAIN = "alexbers.com"

# Tag for advertising, obtainable from @MTProxybot
# AD_TAG = "3c09c680b76ee91a4c25ad51f742267d"
IGNORE_TIME_SKEW = True

Tnx workd


HOCON ignores environment overrides inside of Docker Image

Problem
I'm trying to set up a docker compose file to run elasticmq in two different scenarios. TLDR: the problem is that one scenario requires the hostname in the response of a GetQueueUrl request to be localhost and another scenario requires it be the container name, elasticmq. I tried to set this up by setting an ENV override in the conf file like so:
node-address {
  protocol = http
  host = elasticmq
  host = ${?ELASTICMQ_NODE_ADDRESS_HOST}
  port = 9324
  context-path = ""
}

Alas, it appears that ELASTICMQ_NODE_ADDRESS_HOST is not picked up by HOCON at all. Yet when I override the entrypoint to printenv I can see it:
elasticmq    | PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
elasticmq    | HOSTNAME=elasticmq
elasticmq    | ELASTICMQ_NODE_ADDRESS_HOST=foobar
elasticmq    | HOME=/home/demiourgos728
elasticmq exited with code 0

Steps to reproduce
Setup conf file:
include classpath("application.conf")

default-queue-config {
  defaultVisibilityTimeout = 10 seconds
  delay = 5 seconds
  receiveMessageWait = 0 seconds
  fifo = false
  contentBasedDeduplication = false
}

node-address {
  protocol = http
  host = localhost
  host = ${?ELASTICMQ_NODE_ADDRESS_HOST}
  port = 9324
  context-path = ""
}

queues {
  sum-queue: ${default-queue-config}
}

aws {
  region = us-west-2
}

Docker compose file:
---
version: '3.2'
services:
  elasticmq:
    container_name: elasticmq
    hostname: elasticmq
    image: softwaremill/elasticmq-native:latest
    volumes:
      - ./configs/elasticmq.conf:/opt/elasticmq.conf # path to file above
    ports:
      - "9324:9324"
    expose:
      - "9324"
    environment:
      - ELASTICMQ_NODE_ADDRESS_HOST=foobar
...

Run: curl "localhost:9324?Action=GetQueueUrl&QueueName=sum-queue"
Expect:
<GetQueueUrlResponse xmlns="http://queue.amazonaws.com/doc/2012-11-05/">
  <GetQueueUrlResult>
    <QueueUrl>http://foobar:9324/000000000000/sum-queue</QueueUrl>
  </GetQueueUrlResult>
  <ResponseMetadata>
    <RequestId>00000000-0000-0000-0000-000000000000</RequestId>
  </ResponseMetadata>
</GetQueueUrlResponse>

Get:
<GetQueueUrlResponse xmlns="http://queue.amazonaws.com/doc/2012-11-05/">
  <GetQueueUrlResult>
    <QueueUrl>http://localhost:9324/000000000000/sum-queue</QueueUrl>
  </GetQueueUrlResult>
  <ResponseMetadata>
    <RequestId>00000000-0000-0000-0000-000000000000</RequestId>
  </ResponseMetadata>
</GetQueueUrlResponse>

I was able to get this working as expected by creating my own docker image by following instructions in the README.md. Still I think this should be looked at, or at the very least explicitly called out in the README.md

I've tried run with the environment variable, env-file through command line and file and also changing your compose - none of that fixed the issue, but as you've said - variables are present in the container. The only thing I've noticed is that this issue is only present when using native image - when I've changed it to full JVM it worked. Also tests were fine.
After some debugging I've just invalidated cache of ConfigLoader, because variables were there and everything we use is up-to-date. Now it works perfectly. 🪄
Thanks for letting us know 👍


Implemented OR-causality.

The algorithm for this I will display in a blog post. For now, here is some testing information. The test files are here:
Or-causality testing.zip
OR-gate C = A+B:
Works as expected. Synthesis produces this circuit:
circuit_or_gate.pdf
AND-gate C = AB:
Also works as expected. Synthesis produces this circuit:
circuit_and_gate.pdf
Two OR-gates - C = (A+B)(D+E):
Synthesis produces a predictably complex circuit, but simulation of the STG reveals it to work as expected.
To set C high (minimum): A+ and D+.  A+ and E+.  B+ and D+.  B+ and E+.
To set C low: All signals low
AND and OR gate - C = (A+B)DE:
Again, synthesis produces something unrecognizable. Simulation reveals correctness:
To set C high (minimum): A+, D+ and E+. B+, D+ and E+.
To set C low (minimum): A-, B- and E-. A-, B- and D-.
A 2-input OR and a 3-input OR - C = (A+B)(D+E+F):
Synthesis doesn't produce much, but simulation is good:
To set C high (minimum): A+ and D+. A+ and E+. A+ and F+. B+ and D+. B+ and E+. B+ and F+.
To set C low: All signals low
Let me know if you have any other test cases you wish me to try.

I think we should combine arcs and ors into arcs:
arcs :: [([a], a)]

arcConcept from to = mempty { arcs = [([from], to)] }

In other words, usual causality is a special case of OR-causality with a singleton list of causes. Pretty sure this will simplify the rest if the code too.

Can be done.
Something like:
When it comes to handling OR causality in the translation, filter for lists of >1 size and those are OR causality?

Yes, but I don't think you will ever need to do the filtering. Think of singletons as brackets with single variables when doing expansion.
In fact I think all you need is standard Haskell function sequence which will magically compute all terms for you :-)
See answers here: http://stackoverflow.com/questions/4119730/cartesian-product

For example, try sequence [[1], [2, 3], [4, 5]].

Yeah that would work great. I'll replace this part in my implementation and see how it goes.

@snowleopard: I have used your suggestions and re-tested. All works well :)

@snowleopard: Fixes made. Still working correctly.

@snowleopard: Hold off for 2 minutes, I forgot to include AND and OR gate concepts

@snowleopard: OK i'm done, unless you have any further suggestions :)

This should close #34

Great, thanks!


XML output broken, CSV output column swapped

Describe the bug
-w xml does not produce desired output.
-w csv reorders columns.
To Reproduce
Steps to reproduce the behavior:
$ go version
go version go1.22.4 linux/amd64
$ ~/go/bin/dasel --version
dasel version development-v2.8.1
$ cat thrust.csv
Time,Thrust,Source
0,0,eng
0.000,0.51,eng
0.002,0.051,sim
0.004,0.152,sim
$ ~/go/bin/dasel -r csv -w csv -f thrust.csv
Source,Thrust,Time
eng,0,0
eng,0.51,0.000
sim,0.051,0.002
sim,0.152,0.004
$ ~/go/bin/dasel -r csv -w json -f thrust.csv
[
  {
    "Time": "0",
    "Thrust": "0",
    "Source": "eng"
  },
  {
    "Time": "0.000",
    "Thrust": "0.51",
    "Source": "eng"
  },
  {
    "Time": "0.002",
    "Thrust": "0.051",
    "Source": "sim"
  },
  {
    "Time": "0.004",
    "Thrust": "0.152",
    "Source": "sim"
  }
]
$ ~/go/bin/dasel -r csv -w xml -f thrust.csv
[0xc000303180 0xc0003031e0 0xc000303220 0xc000303280]
$ ~/go/bin/dasel -r csv -w xml -f thrust.csv
[0xc0003ba060 0xc0003ba0a0 0xc0003ba0e0 0xc0003ba140]
$ ~/go/bin/dasel -r csv -w xml -f thrust.csv
[0xc00029a2a0 0xc00029a2e0 0xc00029a320 0xc00029a3a0]

Expected behavior
-w xml should produce valid XML.
-w csv should not reorder CSV columns.
Desktop (please complete the following information):

OS: Fedora release 40 (Forty)
Version: dasel version development-v2.8.1

Thanks for raising these issues. I'll address them ASAP

I'm bumping into the same issue. I managed to reduce it to:
> echo -e '[{}]' | dasel -r json -w xml
[0x140002d1e80]

> echo -e 'a\na\n' | dasel -r csv -w xml
[0x1400022d1a0]


Downgrade deployment target to iOS 7.0

Issue #1

Whoopie! Bonus points for a travis.yml :stuck_out_tongue_winking_eye:
I'll test on my end and merge.


importlib.resources support in editable mode

For now I want to gather a few notes about my experimentation with importlib.resources:

scikit-build-core strips out the suffix of the library, i.e. in the _editable.py fileinstall(
  {...},
  {...,
    'spglib.lib.libsymspg': 'spglib/lib/libsymspg.so.2.1.0'
  }, ...
  )

In principle that seems really nice, but the name would be inconsistent on unix and windows anyway (prefix lib or not). At which point the cmake author would have to make a new library with fixed OUTPUT_NAME and suffixes, etc. But in that case it is unnecessary to sanitize the file anymore right? I think it is better to just export all files as is and handle these on the python side
After running importlib.resources.files() the files are not picked when using iterdir(). Only the files that are actually in that folder and pycache are detected. Presumably the paths from _editable.py have to be injected there? Sure enough when doing importlib.resources.as_file it redirects to the original source path.

Any clues on where to start to help implement this?

I was trying to investigate how hatchling handles redirection in editable installs, i.e. if I have something like:
[tool.hatch]
build.include = [
    "python/beakerlib",
    "src",
]

[tool.hatch.build.sources]
"python/beakerlib" = "beakerlib"
"src" = "beakerlib/src"

This should be internally a similar issue, although in this case it should be more straightforward. Apparently that is not solved in hatchling either:
ValueError: Dev mode installations are unsupported when any path rewrite in the `sources` option changes a prefix rather than removes it, see: https://github.com/pfmoore/editables/issues/20

I think the first step will be to rewrite the editable support classes, probably looking more like https://github.com/mesonbuild/meson-python/blob/main/mesonpy/_editable.py. Currently we are reusing the file based finders, but we need a custom finder that supports the resources protocol. That will have access to that list, and will produce the correct items when requested by importlib.resources.

I've found a similar issue in editables hopefully that project is useful as a more light-weight reference

For playing with this, I generally do pip install -e . then edit the editable file installed into site-package directly.
Documentation is very limited on how to do this sort of thing! :)

Well, I managed to get at least the backbone for this:
class TestLoader(importlib.machinery.SourceFileLoader):
    def __init__(self, name: str, path: str):
        super().__init__(name,path)

    def set_data(self, path: importlib.abc._Path, data: bytes, *, _mode: int = ...) -> None:
        pass

    def get_resource_reader(self, module):
        return TestReader(self)

# Traversable
class TestPath(type(pathlib.Path())):
    def iterdir(self: Self) -> Traversable:
        for k,v in NAMESPACES.items():   # NAMESPACES = self.known_wheel_files
            yield pathlib.Path(os.path.join(DIR, v))
        yield from super().iterdir()

# TraversableResources
class TestReader(importlib.readers.FileReader):
    def __init__(self, loader: TestLoader):
        super().__init__(loader)

    def files(self) -> Traversable:
        return TestPath(self.path)

With a hook at:
        if fullname in self.known_source_files:
            redir = self.known_source_files[fullname]
            spec = importlib.util.spec_from_file_location(fullname, redir)
            spec.loader = TestLoader(fullname, redir)
            return spec

Well, this got complicated fast but I guess the main logic that is missing:

Generate a tree of all of the importable modules, i.e. those that can accept importlib.resources.files(). The leafs should not count, e.g. currently there is an implication that spglib/include/spglib.h -> spglib.include.spglib, but that should not be the case, only the parent should be allowed (spglib/include -> spglib.include)
In the find_spec method, use an appropriate typed loader depending on if the module is a python source file or an intermediary node. In both cases the corresponding Reader must inject/replace the leaves of the node

The main complication here is getting the correct type of the loaders in order for the source code to be executed and creating the navigable object. Meson implementation has got all of the points addressed, but I think this can be simplified to piggyback onto pathlib.Path and the importlib.util.spec_from_file_location.


Improve USFM to HTML conversion

Proper paragraph closure in Bible HTML
Better handling of USFM \li markers
Converter catches truncation of HTML (was in UST Numbers and 1 Chronicles)
Linter catches leading zeros in chapter and verse numbers
Lint and convert in book order (easier to follow logs)

Pull Request Test Coverage Report for Build 62

104 of 170 (61.18%)  changed or added relevant lines in 21 files are covered.
31 unchanged lines in 2 files lost coverage.
Overall coverage decreased (-0.3%) to 77.634%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

linters/usfm_linter.py
9
10
90.0%

tx_usfm_tools/support/books.py
1
2
50.0%

tests/linter_tests/test_usfm_linter.py
7
9
77.78%

tx_usfm_tools/support/abstractRenderer.py
2
4
50.0%

converters/usfm2html_converter.py
13
18
72.22%

webhook.py
0
6
0.0%

tx_usfm_tools/support/singlehtmlRenderer.py
39
88
44.32%

Files with Coverage Reduction
New Missed Lines
%

tx_usfm_tools/verifyUSFM.py
6
96.95%

tx_usfm_tools/support/singlehtmlRenderer.py
25
55.67%

Totals

Change from base Build 54:
-0.3%

Covered Lines:
7088

Relevant Lines:
9130

💛  - Coveralls


Need spy function in assert

I think, good idea, if you are extend original chai of lib as https://github.com/chaijs/chai-spies
expect(spy).to.have.been.called.with('foo');

You can do it inside your project. Spies, Stubs are not something I want bundle by default.
const { Assertion } = require('japa/api')
const spies = require('chai-spies')
Assertion.use(spies)

If you use japa-cli to run tests, then place this code inside japaFile.js inside the project root and the cli will load it.
Also note that japa using the assert interface of chai, if you want a different interface, simply ditch the japa assert and require chai directly in your test files


sprinkles: support proxy

Closes #595

⚠ GitGuardian has uncovered 2 secrets following the scan of your pull request.
Please consider investigating the findings and remediating the incidents. Failure to do so may lead to compromising the associated services or software components.
🔎 Detected hardcoded secrets in your pull request
🛠 Guidelines to remediate hardcoded secrets
🦉 GitGuardian detects secrets in your source code to help developers and security teams secure the modern development process. You are seeing this because you or someone else with access to this repository has authorized GitGuardian to scan your pull request.

Note this is a false positive. There is a variable named "password", but there are no hard-coded secrets.


Better alternative to SizedDrawing

#180 removes the ill-designed SizedDrawing trait. The intent of this trait was to allow partial updates for displays that supported it. This issue is to discuss a better alternative.
As I see it, a partial update requires two things:

A way of specifying the rectangle of pixels to update (probably a top left/bottom right coord pair)
Contiguous pixel data to send to this area (fills the entire area instead of only returning filled pixels from the iterator).

My questions off the top of my head are:

Is top left/bottom right the correct way to specify the rect to update for most/all/all known supported displays? Is there a better/more generally applicable way to do it?
The pixel data mentioned in (2.) above will return coordinates. Should they be relative to the defined area, or remain relative to the display origin?
Does the pixel data really need to be contiguous? I think it does but I might be missing an important detail.

I don't think this should be in 0.6.0, so there's time to think about it and implement it properly this time.

Some way of doing this is definitely needed.
The new methods on DrawTarget for supporting acceleration are nice, but in many cases (e.g. ST7735) writing a contiguous stream of pixels is much faster than writing pixel by pixel, which requires sending the pixel address command before each color word.
This interface should be used for e.g. text rendering.

There might be some missing pieces in this idea that e-g needs to fill in, but could you use set_address_window() and send a stream of bytes out for e-g objects? Obviously this relies on being able to get the size of said object, but assuming you can would that work?


feat: stack overflow detection exploiting reserved page

Alternative to https://github.com/dfinity/motoko/pull/3782

reserve last page of memory for Rust stack overflow detection
instrument stack allocations that might not land on last page (but a previous page) to force an explicit access violation (by reading from last, unallocated word in full wasm memory.)
omit bounds checks to accesses that will land within last page, trigger AV on subsequent access

Advantage over https://github.com/dfinity/motoko/pull/3782:

most stack guards for static allocations are left implicit (less instructions, less cost).
all stack overflows are reported as access violations (IC "heap out of bounds"), not some as "RTS Stack underflow" and some as "heap out of bounds"
no need for hacky stack reservation at (logical) top of stack for Rust/C functions.

Looks good, but I think we can shave off a few more instructions.

Perhaps, but that can come in later PRs. I really want to make progress on getting parity for serialization and deserialization stack depth.

Looks good, but I think we can shave off a few more instructions.

Perhaps, but that can come in later PRs. I really want to make progress on getting parity for serialization and deserialization stack depth.

I am following up in 3801.


Error HammerManager

I have this error
node_modules/@angular2-material/core/gestures/MdGestureConfig.d.ts(4,40): error TS2304: Cannot find name 'HammerManager'.
My version of core is 2.0.0-alpha.7-4

I'm also facing this error, could explain your fix ? Thanks

@maxime1992 -- see http://stackoverflow.com/questions/39496267/module-not-found-error-cant-resolve-hammerjs/39496268#39496268.


RexRay URL Config For XtremIO

Following this guide to configure RexRay on CentOS. https://rexray.readthedocs.io/en/v0.3.3/user-guide/storage-providers/#configuration_7
I installed the required RPMs listed in the prerequisite steps.  I also created an initiatior group on the XtremIO node.
My rexray config.yml looks similar to what is suggested by the guide.  If I try to reach https://<xms_ip>/xtremio with a browser it fails.  If I try to start RexRay, I see a 404 error in the logs.  Is the documentation out of date as /xtremio doesn't seem to be valid url?  Anyway looking for a suggestion on proper endpoint url to use for XtremIO.
rexray:
  logLevel: debug
  storageDrivers:
  - xtremio
xtremio:
  endpoint: https://<xms_ip>/xtremio
  insecure: true
  username: admin
  password: password
  multipath: true

Forgot to mention XtremIO Brick is running s/w version 4.2.0 build 34.

I manually created a volume on XtremIO and linked it to corresponding Initiator group for my Linux host.  I was able to create a disk partition and EXT3 filesystem from the Linux host where I am trying to run RexRay. I can read and write from that volume properly.  Did this to ensure I have proper Iscsi connectivity between Linux host and XtremIO.
Searching through the various issues I updated my config to look like below.  I took multipath out of the picture to simplify things.
cat config.yml
rexray:
logLevel: debug
storageDrivers:
- xtremio
volume:
mount:
preempt: true
unmount:
ignoreusedcount: true
volumeDrivers:
- docker
xtremio:
endpoint: https:///api/json/v2
insecure: true
username: admin
password: Xtrem10
multipath: false
remoteManement: false
deviceMapper:  false
Now when I try to start rex-ray, I get an error from XtremIO API status 400 "obj_not_found" .
time="2016-09-27T10:26:15-04:00" level=info msg="started module" address="tcp://<IP_ADDRESS>:7979" name=default-admin typeName=admin
time="2016-09-27T10:26:15-04:00" level=info msg="[linux]"
time="2016-09-27T10:26:15-04:00" level=info msg="[docker]"
time="2016-09-27T10:26:15-04:00" level=info msg="[xtremio]"
time="2016-09-27T10:26:15-04:00" level=debug msg="core get drivers" osDrivers=[linux] storageDrivers=[xtremio] volumeDrivers=[docker]
time="2016-09-27T10:26:15-04:00" level=info msg="docker volume driver initialized" availabilityZone= iops= moduleName=default-docker provider=docker size= volumeRootPath="/data" volumeType=
time="2016-09-27T10:26:15-04:00" level=debug msg="error initializing driver" driverName=XtremIO error.userName=admin error.provider=XtremIO error.remoteManagement=false error.inner.message="obj_not_found" error.deviceMapper=true error.insecure=true error.moduleName=default-docker error.endpoint="https:///api/json/v2" error.password="******" error.inner.StatusCode=400 error.inner.error_code=400 error.multipath=false
time="2016-09-27T10:26:15-04:00" level=info msg="os driver initialized" moduleName=default-docker provider=linux
time="2016-09-27T10:26:15-04:00" level=debug msg="checking volume path cache setting" pathCache=true
time="2016-09-27T10:26:15-04:00" level=info msg=vdm.List driverName=docker moduleName=default-docker
time="2016-09-27T10:26:15-04:00" level=info msg="listing volumes" driverName=docker moduleName=default-docker
time="2016-09-27T10:26:15-04:00" level=error msg="default module(s) failed to start"
time="2016-09-27T10:26:15-04:00" level=info msg="service sent registered modules start signals"
time="2016-09-27T10:26:15-04:00" level=error msg="service initialized failed"
time="2016-09-27T10:26:15-04:00" level=info msg="error initializing driver" m=&{0xc820354360 default-docker unix:///run/docker/plugins/rexray.sock The default docker module.} m.r=&{0xc820350b20 0xc820252f40 0xc82022f5a0 0xc820252f50 default-docker map[Openstack:0xc820354420 Rackspace:0xc820343280 ScaleIO:0xc8203458f0 linux:0xc82028a0f8 Isilon:0xc820352b90 VMAX:0xc820266a50 docker:0xc82028a100 ec2:0xc820345680 virtualbox:0xc820351420 gce:0xc820342ec0 XtremIO:0xc8203543c0]}
Again I am running XtremIO 4.2.0 build 34 and suspecting there was some API changes between 3.0.0 and 4.2.0 that are breaking RexRay.
I did a tcpdump trying to see which API rexRay is trying to call but it seems semi-encrypted because of the https layer.
Any help would be appreciated.

Hi @carone1 - I will be firing up an XtremIO environment to test this. I hope to get back to you soon.

You may want to try changing your endpoint to be: https:///api/json instead of https:///api/json/v2
The code base for REX-Ray 0.3.3 is here: https://github.com/emccode/rexray/tree/v0.3.3
The code base for our XtremIO api is here: https://github.com/emccode/goxtremio
I am still in the process of trying to get a node up.

Hi @cduchesne
Using https:///api/json produces the same error.   I looked at the code a bit already... will look further. Thanks for investigating.

resolved issue over WebEx - initiator configuration was not set correctly in /etc/iscsi


Invalid unicode character with apoc.import.graphml (#3107)

Cherry pick https://github.com/neo4j-contrib/neo4j-apoc-procedures/commit/b98fb2866dc3431bfaff2a75bf83adca1c2b568f
Waiting for cherry pick of https://github.com/neo4j-contrib/neo4j-apoc-procedures/pull/3177

Duplicated (https://github.com/neo4j/apoc/pull/199)


[LANG-1634] Add ObjectUtils #applyIfNonNull and #applyFirstNonNull

Utility methods that take a java.util.function.Consumer and possibly null value(s). The consumer is invoked if the value is not null or with the first non-null value, respectively.
See LANG-1634 and discussion at [lang] ObjectUtils enhancement - consumer with non-null value

Coverage increased (+0.002%) to 95.014% when pulling ce7e4c98aea3cc2abd9a4029be402416efeecaf7 on bindul:LANG-1634_ObjectUtils-applyIfNonNull into 9fa1d734f66f1ad236cafea54bfcc94a1ba8fd1a on apache:master.

It seems to me the true test of a new API like applyIfNonNull is where can it be used within Commons Lang, if we don't eat our own dog food, it seems odd to tell others to do so. IOW, I'd like to see this PR include using this API.
I'm not convinced as to the utility of applyFirstNonNull, see above.

@garydgregory
I have renamed the methods to accept from apply and switched the parameter order where possible.
acceptFirstNonNull is the analogous method to existing ObjectUtils.firstNonNull or StringUtils.firstNonBlank. If I remember correctly, I have had one use for this method in my real life code, where a configuration parameter value could be supplied at multiple levels (specific instance, application default or global default; the first two could be null) and I have used a similar method to handle this. If you don't want to include it, I am happy to remove this.
In a real life scenario, the use case for the acceptIfNonNull method is usually when setting configuration values. The driver (say for something like redis, solr, etc.) or library (like a HTTP client library) accepts a configuration bean with some default values set. Your application accepts configuration values, and you only want to set those in the configuration bean if they are not null (or you lose the default). Anyways, I have updated 3 existing commons-lang classes to show how it can reduce 3 lines of code to 1. I did not go and update every possible occurrence, as that would make this PR large and lose focus on the primary change in the PR.
Please review and let me know if I should make further modifications.

@bindul Please rebase on master. TY!

@bindul Please rebase on master. TY!

@garydgregory Done!
Please let me know if you want me to squash commits into logical groups (I am thinking 1 with the change and the changes for review comments and another where the new method is used elsewhere in lang)

@garydgregory Done!
Please let me know if you want me to squash commits into logical groups (I am thinking 1 with the change and the changes for review comments and another where the new method is used elsewhere in lang)

We could really use this method. This is helpful because it removes the if/else code branch from the application codes, and therefore, devs don't have to write trivial unit tests to meet the code coverage requirements.


Parameter substitution in query templates

PostgreSQL does not support parameters for identifiers, eg. database, schema, table, or column names (e.g. in DDL statements). This is a potential security vulnerability. In order to prevent DDL injection in parameters used for identifiers we will only allow a set of whitelisted characters to be substituted in parameters.
Parameters which are not used as identifiers should be provided as literal in the template string.
These are set in curly braces prefixed with a percent sign instead of the dollar sign, eg. %{body}
%{body}, ${viewport}, and ${filter} are reserved literal parameter.
This will only apply to templates without an implicit render method.
The render method will no longer be assigned as default. The current render method will be assigned to view templates in the view module.
The render method for query templates is in this codepen.
https://github.com/GEOLYTIX/xyz/commit/55a694c1d2c2851a6030b32383e786ce55cb318c

Fix for reserved params. https://github.com/GEOLYTIX/xyz/commit/6d8daf773905b952fa982b0bff95a484e894d559

Fix for infotip query. https://github.com/GEOLYTIX/xyz/commit/e3e1f89f412269f26f98183d3b68f7fa6546ac79

https://geolytix.github.io/xyz/docs/develop/api/query/

Parameter substitution should now be working for filter params. https://github.com/GEOLYTIX/xyz/commit/6c57ec3f9734f308349207f6e38b01a6abdd7906


⚠ Bofrost.be has degraded performance

In b834b0b, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 1369 ms

Resolved: Bofrost.be performance has improved in 86eb8e0 after 34 minutes.


Please Read

Please improve the menu and add blockbot <3

@matoqueimado fixed and closed.

this dude hasnt seen my pull request lol
#739

Wdym improve menu it's fine


Guild.fetchMembers docs update

Please describe the changes this PR makes and why it should be merged:
Added a line of documentation to Guild.fetchMembers that it returns a collection of new members.
Semantic versioning classification:

[ ] This PR changes the library's interface (methods or parameters added)

[ ] This PR includes breaking changes (methods removed or renamed, parameters moved or removed)

[X] This PR only includes non-code changes, like changes to documentation, README, etc.

Line 504 already implies that.

I expected a collection of all members. This'll stop some confusion.

It should return a collection of all members tbh. Might as well fix the issue itself.

I thought this was intended oh

Unneeded because of #1696


caches: disable more components for the toolchain build

Windows builds in waves:

build build tools
build tools (compilers, debuggers, linkers, assemblers)
build runtimes (Swift runtime, standard library, experimental libraries)
build core libraries
build Swift tooling

We do not need to build the C++ interop module at the moment when building the tools.  This disables that and the extra content which currently does not result in any artifacts.

@swift-ci please smoke test


kernel: add bootargs support

This PR adds support for receiving bootargs from the loader and passing them to the main after splitting them into arguments. It includes implementation for two loaders (multiboot and zefi).
To support additional loaders the const char *get_bootargs() has to be implemented for them. After enabling it and one of the supported loaders the main function in the form int main(int argc, char **argv) can be used.
This PR also includes a sample with tests.

If dynamic, then encode the location with Devicetree as a zephyr,chosen

Currently, the chosen node in Zephyr assumes that only phandles are assigned in this node. This means that we can’t simply assign a string like in Linux, and the DT_HAS_CHOSEN macro won’t work in our case because of that. Unless you had something else in mind that I’ve missed?
We’ve added the static/dynamic differentiation, but left the dynamic implementation as it originally was - just defining arguments for QEMU.

@kartben @andyross @cfriedt Could you PTAL? Thanks!

Since we're talking about C entry points, it might help to get feedback from @stephanosio and @keith-packard.

Looks fine to me. I did go check the C and POSIX specs to see if the int main (int argc, char **argv, char **env) form was mentioned anywhere, but it wasn't. Ofc, we'll need to update the Zephyr docs mentioning the new alternative form for main.

Looks fine to me. I did go check the C and POSIX specs to see if the int main (int argc, char **argv, char **env) form was mentioned anywhere, but it wasn't. Ofc, we'll need to update the Zephyr docs mentioning the new alternative form for main.

Hi @keith-packard, thanks for your comment!
We've updated the Zephyr docs so that the documentation mentions the alternative form for main.

Hi @andyross, @peter-mitsis - pinging you guys since you're assigned here. Is there anything else that I'm missing that blocks us from moving forward with this PR?


Implement circular crop

First of all thank you publish this library but We need circular crop feature inside this library.
Can you suggest me how can we implement this feature in our production app because we need it asap.

shape
BoxShape.circle and BoxShape.rectangle,If this is [BoxShape.circle] then [borderRadius] is ignored.

does it what you want??

hi
I want to show a cropped area in a circular shape, and am sharing the
sample.
On Wed, May 20, 2020 at 4:00 PM zmtzawqlp<EMAIL_ADDRESS>wrote:

shape BoxShape.circle and BoxShape.rectangle,If this is [BoxShape.circle]
then [borderRadius] is ignored.
does it what you want??
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/fluttercandies/extended_image/issues/193#issuecomment-631390321,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/APGW34RLIG2EKXDQVIUR7NTRSOWLZANCNFSM4NFV6Q3Q
.

Help me,i need it and implement on profile page of my production app.

you can do it with CustomPaint. paint mask and clear circular

I'm trying this, but i'm failed and I need it urgently because my
organization wants to release the production app at the end of this month.
So I request that you give the code please.
On Fri, May 22, 2020 at 7:36 AM zmtzawqlp<EMAIL_ADDRESS>wrote:

you can do it with CustomPaint. paint mask and clear circular
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/fluttercandies/extended_image/issues/193#issuecomment-632437771,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/APGW34S4SW5DSS2EZIKOARDRSXMZ7ANCNFSM4NFV6Q3Q
.

To be clear, is there a specific area (e.g. crop 60x60 in a 120x120 image with 10 px left and 10 px top) or just make them as circles without any details?

If it is possible to specify the area by user end then it's very useful to us.

If it is possible to specify the area(custom) by user end then it's very useful to us.

As I thought, user end doesn't have a request to specify a custom area to make a circle or something. If you're thinking about a cover photo like the one in Facebook, then I have to tell you that this should be done in the back end side rather than on the client side, upload a cropped image with a proper area, with detailed crop info.
 Feel free to ask more about your implementation.

HI,
Can you tell me how to make or draw and show the circular cropping area
above the image like a rectangular cropping area because i'm unable to
create a code for a circular area.As per your library and example we show
only rectangular cropping area.
[image: image.png]
On Sat, May 23, 2020 at 11:34 PM Alex Vincent<EMAIL_ADDRESS>wrote:

If it is possible to specify the area(custom) by user end then it's very
useful to us.
As I thought, user end doesn't have a request to specify a custom area to
make a circle or something. If you're thinking about a cover photo like the
one in Facebook, then I have to tell you that this should be done in the
back end side rather than on the client side, upload a cropped image with a
proper area, with detailed crop info.
 Feel free to ask more about your implementation.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/fluttercandies/extended_image/issues/193#issuecomment-633107678,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/APGW34VHL3T5J2CQWYVW47TRTAF3PANCNFSM4NFV6Q3Q
.

Can you tell me how to make or draw and show the circular cropping area above the image like a rectangular cropping area because i'm unable to create a code for a circular area.

Ref:

ClipRRect
ClipOval

It's better to ask such question in so.
  return LayoutBuilder(
      builder: (BuildContext c, BoxConstraints d) {
        Rect crop = Offset.zero & Size(d.maxWidth, d.maxHeight);
        crop = crop.deflate(100.0);
        return SizedBox(
          width: d.maxWidth,
          height: d.maxHeight,
          child: CustomPaint(
            child: Image.network(
              'https://ss3.bdstatic.com/70cFv8Sh_Q1YnxGkpoWK1HF6hhy/it/u=2534506313,1688529724&fm=26&gp=0.jpg',
              fit: BoxFit.fill,
            ),
            foregroundPainter: MyCustomPainter(crop),
          ),
        );
      },
    );

class MyCustomPainter extends CustomPainter {
  MyCustomPainter(this.crop);
  final Rect crop;

  @override
  void paint(Canvas canvas, Size size) {
    canvas.saveLayer(Offset.zero & size, Paint());
    //paint mask

    canvas.drawRect(
        Offset.zero & size,
        Paint()
          ..color = Colors.grey.withOpacity(0.5)
          ..style = PaintingStyle.fill);

    ///clear
    canvas.drawRect(crop, Paint()..blendMode = BlendMode.clear);
    //line
    canvas.drawRect(
        crop,
        Paint()
          ..color = Colors.white
          ..style = PaintingStyle.stroke
          ..strokeWidth = 3);
    canvas.restore();
  }

  @override
  bool shouldRepaint(CustomPainter oldDelegate) {
    if (oldDelegate.runtimeType != runtimeType) {
      return true;
    }
    return crop != (oldDelegate as MyCustomPainter).crop;
  }
}

@prasantco
@zmtzawqlp
@AlexV525
are you found a solution ? can you share example code ?   thanks

here are the demo. https://github.com/fluttercandies/extended_image/blob/978092941fbe5e241221ba885f88263d3344c51b/example/lib/pages/complex/image_editor_demo.dart#L495


Some improvements

I'm going to merge if that's good with you @kairen please revert if there are any problems


EnumListHandler should skip lists that have an ExistsIn attribute

This way one could have a form using an enum but limiting the usable values (useful for when one is creating multiple distinct forms for the same general operation), or replacing the enum text values.
public override bool CanHandle() =>
    GetUnderlyingType(FieldGenerator).IsEnum && !HasExistInAttibute();

private bool HasExistInAttibute() =>
    FieldGenerator.Metadata.AdditionalValues.ContainsKey(ExistsInAttribute.ExistsKey)
    && FieldGenerator.Metadata.AdditionalValues[ExistsInAttribute.ExistsKey] as bool? == true;

Very reasonable. Feel free to raise a PR :)

On 9 Nov 2016, at 1:33 AM, Felipe Sateler<EMAIL_ADDRESS>wrote:
This way one could have a form using an enum but limiting the usable values (useful for when one is creating multiple distinct forms for the same general operation), or replacing the enum text values.
public override bool CanHandle() =>
GetUnderlyingType(FieldGenerator).IsEnum && !HasExistInAttibute();
private bool HasExistInAttibute() =>
FieldGenerator.Metadata.AdditionalValues.ContainsKey(ExistsInAttribute.ExistsKey)
&& FieldGenerator.Metadata.AdditionalValues[ExistsInAttribute.ExistsKey] as bool? == true;
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.


[Issue-138] Issue Template creation

Purpose
First version of the Issue template
PR checklist

[x] Issue - https://github.com/dell/csi-baremetal/issues/138
[ ] PR label - https://github.com/dell/csi-baremetal/labels/documentation

@MSalamatov please fix issue with DCO plugin so we can pull your changes in.

CI in progress.
PR will be merged soon

CI in progress.
PR will be merged soon

@MSalamatov Thanks for your contribution to the csi-baremetal.

@MSalamatov Thanks for your contribution to the csi-baremetal.


Error on dropping an image

Just got this up and running. However, when I try to drop an image, I got this error in browser console:
WARNING: sanitizing unsafe URL value C:\temp\home.jpg (see http://g.co/ng/security#xss)
browser_adapter.js:122

WARNING: sanitizing unsafe URL value C:\temp\home.jpg (see http://g.co/ng/security#xss)
unsafe:C:\temp\home.jpg:1

GET unsafe:C:\temp\home.jpg net::ERR_UNKNOWN_URL_SCHEME

And image doesn't show up. What's the workaround?

Okay, I figured out myself based on this stackoverflow  post by Helzgate (not the accepted answer!).
So, import DomSanitizer first
import { DomSanitizer } from '@angular/platform-browser';
added to contructor
constructor(private sanitizer: DomSanitizer) {}
and change the binding to
      <img class="media-object" [src]="sanitizer.bypassSecurityTrustResourceUrl(image.path)" style="max-width:200px">


Remove unnecessary string cloning

Tiny improvement by removing unnecessary string cloning in hot path.

@dymayday does the new clippy in holonix v52 pick this up? it flags a lot of cloning related things :)


make internal storage depend on cluster configuration

To fix #4920

Coverage remained the same at 34.766% when pulling e248a870a98e65b678e19c5a0a552feb319105ad on zhiyuhe/fix_is into d31eb2a5e60d493cfc9c6dc50f2fa52e85e2a218 on master.


Negative feature

Summary
Fixed a few errors in code, modified the release note and modified test.parameters.py to illustrate how to use the feature.
Details and comments

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.Sameer Dambal 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.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.Sameer Dambal 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.

This PR is same implementation of  #10571 &  it closes #10360 . @SamD-1998 Please don't repeat PRs. Maintainer should close one PR .

Let's keep the original pull request. I pushed the two new commits added here to the branch used for #10571. @SamD-1998 you can push additional changes to your negative_feature_10360 branch. If you need help with that, we can try to help, but it depends on how you are using git (command line, or integrated into VS Code or some other editor, or through a GUI git tool).


Changing mappings has no effect

Description
Can't remap “o“. It always open my github page in the browers no matter what mappings I use. I can see that remappings are applied (UI shows it in the Hint):

Neovim version
NVIM v0.10.0
Build type: Release
LuaJIT 2.1.1720049189
Run "nvim -V1 -v" for more info
Operating system and version
Sonoma 14.4 (23E214)
Steps to reproduce

Make sure mapping for “q“ and “o“ are remapped in config.
Open neogit with :Neogit
Press “q“

Expected behavior
“O“ behaves as “Toggle“, “q“ do not close.
Actual behavior
Remappings are ignored AF.
Minimal config
-- NOTE: See the end of this file if you are reporting an issue, etc. Ignore all the "scary" functions up top, those are
-- used for setup and other operations.
local M = {}

local base_root_path = vim.fn.fnamemodify(debug.getinfo(1, "S").source:sub(2), ":p:h") .. "/.min"
function M.root(path)
  return base_root_path .. "/" .. (path or "")
end

function M.load_plugin(plugin_name, plugin_url)
  local package_root = M.root("plugins/")
  local install_destination = package_root .. plugin_name
  vim.opt.runtimepath:append(install_destination)

  if not vim.loop.fs_stat(package_root) then
    vim.fn.mkdir(package_root, "p")
  end

  if not vim.loop.fs_stat(install_destination) then
    print(string.format("> Downloading plugin '%s' to '%s'", plugin_name, install_destination))
    vim.fn.system({
      "git",
      "clone",
      "--depth=1",
      plugin_url,
      install_destination,
    })
    if vim.v.shell_error > 0 then
      error(string.format("> Failed to clone plugin: '%s' in '%s'!", plugin_name, install_destination),
        vim.log.levels.ERROR)
    end
  end
end

---@alias PluginName string The plugin name, will be used as part of the git clone destination
---@alias PluginUrl string The git url at which a plugin is located, can be a path. See https://git-scm.com/book/en/v2/Git-on-the-Server-The-Protocols for details
---@alias MinPlugins table<PluginName, PluginUrl>

---Do the initial setup. Downloads plugins, ensures the minimal init does not pollute the filesystem by keeping
---everything self contained to the CWD of the minimal init file. Run prior to running tests, reproducing issues, etc.
---@param plugins? table<PluginName, PluginUrl>
function M.setup(plugins)
  vim.opt.packpath = {}                      -- Empty the package path so we use only the plugins specified
  vim.opt.runtimepath:append(M.root(".min")) -- Ensure the runtime detects the root min dir

  -- Install required plugins
  if plugins ~= nil then
    for plugin_name, plugin_url in pairs(plugins) do
      M.load_plugin(plugin_name, plugin_url)
    end
  end

  vim.env.XDG_CONFIG_HOME = M.root("xdg/config")
  vim.env.XDG_DATA_HOME = M.root("xdg/data")
  vim.env.XDG_STATE_HOME = M.root("xdg/state")
  vim.env.XDG_CACHE_HOME = M.root("xdg/cache")

  -- NOTE: Cleanup the xdg cache on exit so new runs of the minimal init doesn't share any previous state, e.g. shada
  vim.api.nvim_create_autocmd("VimLeave", {
    callback = function()
      vim.fn.system({
        "rm",
        "-r",
        "-f",
        M.root("xdg")
      })
    end
  })
end

-- NOTE: If you have additional plugins you need to install to reproduce your issue, include them in the plugins
-- table within the setup call below.
M.setup({
  plenary = "https://github.com/nvim-lua/plenary.nvim.git",
  telescope = "https://github.com/nvim-telescope/telescope.nvim",
  diffview = "https://github.com/sindrets/diffview.nvim",
  neogit = "https://github.com/NeogitOrg/neogit"
})
-- WARN: Do all plugin setup, test runs, reproductions, etc. AFTER calling setup with a list of plugins!
-- Basically, do all that stuff AFTER this line.
require("neogit").setup({mappings = {status = {o = "Toggle", q = false}}}}) -- For instance, setup Neogit

Here is the last commit where mappings used to work: 9fb8a932d21e03db2dfcf5137e6bd26f2f927d9f

I had a quick look into this and it seems like this is some kind of loading/init issue. If postpone the require of the ProcessBuffer when it actually is created the keybindings are working again:
 lua/neogit/process.lua | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/lua/neogit/process.lua b/lua/neogit/process.lua
index afa6ebec..506a7c26 100644
--- a/lua/neogit/process.lua
+++ b/lua/neogit/process.lua
@@ -5,7 +5,7 @@ local config = require("neogit.config")
 local logger = require("neogit.logger")
 local util = require("neogit.lib.util")

-local ProcessBuffer = require("neogit.buffers.process")
+local ProcessBuffer = nil
 local Spinner = require("neogit.spinner")

 local api = vim.api
@@ -385,6 +385,9 @@ function Process:spawn(cb)
   self.stdin = job

   if not hide_console then
+    if not ProcessBuffer then
+      ProcessBuffer = require("neogit.buffers.process")
+    end
     self.buffer = ProcessBuffer:new(self)
     self:show_spinner()
     self:start_timer()

https://github.com/NeogitOrg/neogit/commit/419f08bbdfedcd7a85c7f96b3367eb2a63366ea0 should fix it


Add optional error handling without exception.

This PR fix several things:

Fix warning related to last version RSpec
Fix duplication for spec_helper require statment
Fix problem with using non bang method for raising exceptions (param raise exception)
Add ability to handler error within request block

Thanks for your patch, @pavel-jurasek-hypofriend-de. Apologies for the delay in reviewing this.
I'm currently triaging the most pressing issues (primarily Sinatra 2.0 compatibility) for the next release, but am definitely interested in incorporating this into the next major version.
In the meantime, I'm happy to report that the rspec issue you identified is now fixed with 1d811d9ad74fadc.


Add circle markers from xy

References:
https://python-visualization.github.io/folium/modules.html#folium.vector_layers.CircleMarker
https://ipyleaflet.readthedocs.io/en/latest/api_reference/circle_marker.html

This feature has been implemented. See notebook example https://geemap.org/notebooks/88_circle_markers
import geemap
m = geemap.Map()
data = "https://raw.githubusercontent.com/giswqs/geemap/master/examples/data/us_cities.csv"
m.add_circle_markers_from_xy(data, x="longitude", y="latitude", radius=10, color="blue", fill_color="black")
m

Is there a function that enables to add markers to a map with different shapes?
For example: add_markers_from_xy(..., shape='square')


HandleRichText=true and removed spaces in translation, + strange conditions

Just uploaded example picture to understand. When HandleRichText is false, no issue.

Here also examples how it was translated with true and false (little offtopic and about quality of translation in different situations):
true(deepl):
神は申された。この世界は<color%3D#BB0000><color%3D#0066AA>『災厄』</color></color>による滅亡の危機に瀕している、と。="And God said, 'This world...<color%3D#BB0000><color%3D#0066AA>"is on the brink of annihilation</color></color>The world is on the brink of annihilation.
false(deepl, looks like deepl not breaking rich text tags):
神は申された。この世界は<color%3D#BB0000><color%3D#0066AA>『災厄』</color></color>による滅亡の危機に瀕している、と。=God has said that this world is on the verge of destruction by <color%3D#BB0000><color%3D#0066AA>"disaster"</color>.
false(google, it breaking tags by paste spaces but they can be restored):
神は申された。この世界は<color%3D#BB0000><color%3D#0066AA>『災厄』</color></color>による滅亡の危機に瀕している、と。=God was applying. This world is in danger of destruction by <color %3D # bb0000> <color %3D # 0066aa> "Disasters" </ Color> </ Color>.
Tested on Reapers Order(RJ309886) because there many of rich text from start. As result I see that for the game better to use HandleRichText=false and it maybe would be good to add tags restore when HandleRichText=false and using endpoint like google.
Also not exactly the option. From other issue #99 and translation results I understood that HandleRichText not doing hard things like remove all tags before translation and paste them back in required places and did not found any more info about option but it looks like it split rich text by tags, translate all parts separately and then paste tags back and merge translated parts in result text.
While tests of mentioned game quite easy found place where added tag removing and tag restore functions in created fork but not found place of merging rich text back to fix spaces.
When tried to find in sources place where translated text merging back with rich tags found couple strange conditions where comparing simular values in core/texttranslationcache.cs:
untranslatedResult.Arguments.Count == untranslatedResult.Arguments.Count

So, the way HandleRichText works is by translating all parts individually and stringing them back together as you say yourself. The reason spaces are not handled correctly is because the source text, being japanese, doesn't have any spaces in it either. If there were spaces, those would be preserved as well.
It's certainly interesting that DeepL is capable of handling rich text (at least this example). The reason the entire HandleRichText feature was made was because Google translate would always mess the tags up. The reason there seems to be sort of a "double" translation when HandleRichText is true for DeepL is because it tries to use contextual information about the text that came before/after each token when translating. This sometimes causes the artifact you see there. If you ever used the Windows DeepL translator Application, you may have noticed it suffers from the exact same problem because it adds this same contextual information for each line.
The if-statement you mention is surely a bug. Not a super important one because I in general would expect the if-statement to evaluate to true either way. I will fix this statement, though.
About removing all tags and restoring them: I am not quite sure how you want to achieve this because you have to guess where the tags must be placed which may be in entirely different places than the original text due to language structure. It would however, not be difficult to modify the RichTextParser to simply get rid of all rich text all together and send a single translation out instead. This would give a better translation, but all markup would obviously all disappear with it.

About removing all tags and restoring them: I am not quite sure how you want to achieve this because you have to guess where the tags must be placed which may be in entirely different places than the original text due to language structure. It would however, not be difficult to modify the RichTextParser to simply get rid of all rich text all together and send a single translation out instead. This would give a better translation, but all markup would obviously all disappear with it.

I even not trying to make so. I understood from 99 issue that it is very hard to make remove and paste back rich text tags in proper places and the best way is to make it on translation service's side while translation process and before noticed that deepl is like understand rich text tags I just added removing of all tags before translation and after also for tests added tags restoring in forked copy(link in 1st message).

Oh, now I see what you are trying to do. You are trying to "unmangle" translations with markup after they're returned.
Let me ask you: How well does that work?


Can't find PingMessage class from javadoc example

Expected behavior
Actual behavior
Steps to reproduce
Minimal yet complete reproducer code (or URL to code)
Netty version
JVM version (e.g. java -version)
OS version (e.g. uname -a)

Which class exactly you are talking about and where exactly is it linked ?

In class IdleStateHandler there are:

// Handler should handle the {@link IdleStateEvent} triggered by {@link IdleStateHandler}.
public class MyHandler extends {@link IdleStateAwareChannelHandler} {

{@code @Override}

public void channelIdle({@link ChannelHandlerContext} ctx, {@link IdleStateEvent} e) {

    if (e.getState() == {@link IdleState}.READER_IDLE) {

        e.getChannel().close();

    } else if (e.getState() == {@link IdleState}.WRITER_IDLE) {

        e.getChannel().write(new PingMessage());

    }

}

}

I have found PingMessage is replaced by PingWebSocketFrame.
Please, correct the doc.

I've found IdleStateHandler is not only about WebSocket. It is my mistake. MyPingMessage or MyProtocolPingMessage name will be better.

@normanmaurer Ref to the Javadoc in question: https://netty.io/4.1/api/index.html?io/netty/handler/timeout/IdleStateHandler.html

It's just an example of a class and not part of netty itself. So I think it is fine ?

I agree with @cemehehko that MyPingMessage would be less confusing

@darklynx if you feel strongly about it please open a PR

Thanks, I'll do so.
I just fell into the same trap as @cemehehko and had to google for PingMessage class, since it look so tempting to reuse the example logic :)


Wrong translation in docs/hooks-state.html

Hi,
I am a beginner of react-hooks and I really appreciates for your translation works.
I found a small mistranslation in https://reactjs.org/docs/hooks-state.html#declaring-a-state-variable page.

English version

What do we pass to useState as an argument? The only argument to the useState() Hook is the initial state.
Unlike with classes, the state doesn’t have to be an object.
...

Korean version

useState의 인자로 무엇을 넘겨주어야 할까요? useState()Hook의 인자로 넘겨주는 값은 state의 초기 값입니다.
함수 컴포넌트의 state는 클래스와 달리 객체를 가질 수 없고, 숫자 타입과 문자 타입을 가질 수 있습니다.

the state doesn't have to be an object is translated as 객체를 가질 수 없고 for now,
but 객체일 필요가 없고 could be more correct one for this case.
Thanks.

Thanks for reporting this. the suggestion is fine but I prefer to 객체일 필요는 없고.
can you fix this and make some pull request?


[3.1.x] Fix dotnet.exe process recovery after abnormal exit in ANCM

Fixes https://github.com/aspnet/AspNetCore/issues/17063.
Description
We introduced a regression between 2.2 and 3.0/3.1 where ANCM out of process wouldn't restart dotnet.exe on crash after restarting once. This was due to a background thread hanging when trying to close a handle for stdout. Also adds an opt-out switch to remove all redirection s.t. if there are still issues with this code-path, we can disable it.
Risk
Medium, but with reduced risk. Any change to ANCM out-of-process is always risky, but giving an opt-out switch should reduce the risk.
User impact
On application crash, ANCM normally would start a new dotnet.exe to restart dotnet. However, because a call to CloseHandle would hang, the static callback we registered wouldn't be overwritten. Therefore, on the next process exit, the callback wouldn't be fired, meaning all subsequent crashes wouldn't be detected.
Workarounds
If people expect their applications to crash or exit abnormally, they can work around this by either using ANCMv1 or enabling stdout logging. Both of these are non-ideal work arounds.
cc @Pilchie

Please apply servicing-consider when this is ready for merging.

We'll also patch this in the 3.0 branch/sdk?

@Tratcher from what I heard, no.

Out of curiosity, what's the other bool config that defaults to true?

SetCurrentDirectory and CallStartupHook both default to true.
https://github.com/aspnet/AspNetCore/blob/3be11f6544485948ba17646ffa7b4242c2c5339a/src/Servers/IIS/AspNetCoreModuleV2/InProcessRequestHandler/InProcessOptions.cpp#L60-L61

Do we have to wait for branding or can we merge these now? I believe our deadline for 3.1.1 is today. @aspnet/build

These can be merged


Fix Wfact upwind cases

Purpose
This PR fixes a nasty bug in the vertical_transport_jac, for both the first_order and third_order upwinding cases.
This manifested only in some high-resolution cases (moist BW and moist HS) and only in a few columns of the Jacobian.
We were adding a reference epsilon, ref_εw to ᶠw, but for some of the columns, this resulted in cancellation errors.
This PR will close #1576
Content
Solution implemented:

[x]  Got rid of the ref_εw hack and instead use the same construct as in the central diff case, but be careful about the sign of ᶠw to preserve the correctness of the upwinding direction.

Review checklist
I have:

followed the codebase contribution guide: https://clima.github.io/ClimateMachine.jl/latest/Contributing/
followed the style guide: https://clima.github.io/ClimateMachine.jl/latest/DevDocs/CodeStyle/
followed the documentation policy: https://github.com/CliMA/policies/wiki/Documentation-Policy
checked that this PR does not duplicate an open PR.

In the Content, I have included

relevant unit tests, and integration tests,

appropriate docstrings on all functions, structs, and modules, and included relevant documentation.

[x] I have read and checked the items on the review checklist.

This is currently being tested in the high-resolution longrun in this build

The code changes look fine to me, but I'd like to add other reviewers to look at the numerics and implicit solve implementation details. cc @dennisYatunin, @Zhengyu-Huang, @szy21

I think @dennisYatunin is the right person to review this:)

bors r+

The longrun moist BW with first-order upwinding on tracers that was failing after only a few time steps now runs to completion. See this build. I am going to add it to the longrun pipeline in a separate PR.


Sites that don't respect the sites/${site}/${site}.channels.xml pattern fail.

Sites that don't respect the sites/${site}/${site}.channels.xml pattern like https://github.com/iptv-org/epg/tree/master/sites/beinsports.com will not work using the npm run grab script as some sites have _{lang} suffixes.
e.g.

Error:
Error: ENOENT: no such file or directory, open '/epg/sites/beinsports.com/beinsports.com.channels.xml'
    at Object.openSync (node:fs:601:3)
    at Object.readFileSync (node:fs:469:35)
    at Object.read (/epg/node_modules/epg-grabber/src/file.js:13:13)
    at main (/epg/node_modules/epg-grabber/bin/epg-grabber.js:77:28)
    at Object.<anonymous> (/epg/node_modules/epg-grabber/bin/epg-grabber.js:157:1)
    at Module._compile (node:internal/modules/cjs/loader:1256:14)
    at Module._extensions..js (node:internal/modules/cjs/loader:1310:10)
    at Module.load (node:internal/modules/cjs/loader:1119:32)
    at Module._load (node:internal/modules/cjs/loader:960:12)
    at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12) {
  errno: -2,
  syscall: 'open',
  code: 'ENOENT',
  path: '/epg/sites/beinsports.com/beinsports.com.channels.xml'
}

Good point! This will have to be fixed.


Run Concurrently (using different ports?)

First off, thanks for the awesome gem.
I want to use headless to run concurrent selenium builds using this gem, and I see that xvfb should allow being passed an --auto-servernum flag at runtime. This will presumably prevent the following collision error I'm seeing currently when running concurrent builds:
Errno::ECONNREFUSED: Failed to open TCP connection to <IP_ADDRESS>:7057 (Connection refused - connect(2) for "<IP_ADDRESS>" port 7057)

I've tried invoking headless using a random display each time inside a sidekiq worker with concurrency of 3, but I get similar errors
headless = Headless.new(display: rand(100))
headless.start

Does using Headless.new(autopick: true) in the sidekick worker solve your problem? That should choose the first available display number.
(BTW, the error is from Selenium, not Xvfb, and it means that Selenium failed to boot - this might be caused by missing Xvfb, but other things too - like a Selenium port conflict.)

@leonid-shevtsov isn't autopick: true the default?
It would seem that passing display:  key will conflict with the autopick settings.
I do have Xvfb installed, and do not have this error when running a single thread, only when I introduce concurrent workers.

How do you start your Selenium? Do you specify different ports for each Selenium instance?

@leonid-shevtsov simply like this:
      def driver
        @driver ||= Selenium::WebDriver.for :firefox
      end

@leonid-shevtsov @Lordnibbler
I can confirm that there is issue to run scripts which using selenium+headless concurrently.
I've writed small script which reproduces that kind of error:
http://pastebin.com/96h2WEuf
To reproduce error:
run the script in two different consoles, first with command line parameter "10" (without quotes), second with command line parameter "1". Then see what's happening after second script finish.
It looks like that using different display numbers solves this issue.
But I think in that case it's better to run Xvfb one time before starting ruby scripts, there is no need to start/stop Xvfb which performed when you using headless.start / headless.destroy (also destroy occurs on_exit automatically)


rpm: Don't compress non-man files

The previous patterns like ".1" or ".3" are too rough, they also match
libruby.so.2.7.1 unexpectedly.

I'll check this.

The previous patterns like ".1" or ".3" are too rough, they also match
libruby.so.2.7.1 unexpectedly.

Oh. I'd understood!! This causes libruby dependency on td-agent4 release candidate branch!!!!!

I'd confirmed that unintended libruby removing is fixed this patch.
[vagrant@localhost Packages]$ sudo yum install td-agent-4.0.0.rc1-1.el7.x86_64.rpm
Loaded plugins: fastestmirror
Examining td-agent-4.0.0.rc1-1.el7.x86_64.rpm: td-agent-4.0.0.rc1-1.el7.x86_64
Marking td-agent-4.0.0.rc1-1.el7.x86_64.rpm as an update to td-agent-3.7.1-1.el7.x86_64
Resolving Dependencies
--> Running transaction check
---> Package td-agent.x86_64 0:3.7.1-1.el7 will be updated
---> Package td-agent.x86_64 0:4.0.0.rc1-1.el7 will be an update
--> Finished Dependency Resolution

Dependencies Resolved

============================================================================================================================================
 Package                   Arch                    Version                          Repository                                         Size
============================================================================================================================================
Updating:
 td-agent                  x86_64                  4.0.0.rc1-1.el7                  /td-agent-4.0.0.rc1-1.el7.x86_64                   59 M

Transaction Summary
============================================================================================================================================
Upgrade  1 Package

Total size: 59 M
Is this ok [y/d/N]: y
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Updating   : td-agent-4.0.0.rc1-1.el7.x86_64                                                                                1/2
prelink detected. Installing /etc/prelink.conf.d/td-agent-ruby.conf ...
  Cleanup    : td-agent-3.7.1-1.el7.x86_64                                                                                2/2
  Verifying  : td-agent-4.0.0.rc1-1.el7.x86_64                                                                                1/2
  Verifying  : td-agent-3.7.1-1.el7.x86_64                                                                                2/2

Updated:
  td-agent.x86_64 0:4.0.0.rc1-1.el7

Complete!

Thanks!


Unknown environment variable: DD_INSIDE_CI

Describe what happened:
I'm following these instructions to set up CI Test instrumentation, and it says to set up the following environment variable:
DD_INSIDE_CI (Required)
Disables the monitoring of the Datadog Agent container, as the underlying host is not accessible.
Default: false
Required value: true

But this doesn't seem to do anything:
2022-02-16 19:02:13 UTC | TRACE | WARN | (pkg/util/log/log.go:640 in func1) | Unknown environment variable: DD_INSIDE_CI

Describe what you expected:
I expected to not receive this log message because the documentation says it's a required variable. So either the documentation is wrong about which environment variable to set or it's wrong that setting this environment variable is "required" and leaving it unset is acceptable.
Steps to reproduce the issue:
Use the following docker compose:
version: '3.7'
services:
  dd-agent-ci:
    image: "gcr.io/datadoghq/agent:latest"
    environment:
      - DD_API_KEY
      - DD_INSIDE_CI=true
      - DD_HOSTNAME=none
    ports:
      - 8126/tcp

And run it with:
DD_API_KEY=<your api key> docker-compose up dd-agent-ci

Additional environment details (Operating System, Cloud provider, etc):
N/A

Hey @gurchik,
The variable does seem used but it is not in our exclusion list for externally-tracked environment variables. I'll see about getting a fix in for the next release but overall you can safely ignore that warning.


[WIP] Add V0 tensor layout generation

A WIP for generating possible op configurations. Only tensor layouts for now.
@nobradovictt Any comments before we go further with this?

Waiting on #541 to land in order to set appropriate TensorMemoryLayout.


Accounts Configuration

Hi,
I was wondering if I delete the "Admin" account after I deployed openstack-windows-image (for example: Windows Server 2008r2) into new machines, does it affect any system functions?
Thanks

Hello,
There should not be any problem from cloudbase-init perspective, as it uses another administrative account or localsystem, depending on the configuration.
Thank you,
Adrian Vladu


John conroy/ addl soft assay fields

Adds soft_assaytype to the document so we no longer have to call the ingest-api from portal-ui or portal-visualization.
Tries to get the pipeline from the pipeline-shorthand instead of depending on regex.

@NickAkhmetov to confirm adding soft_assaytype we should be able to update https://github.com/hubmapconsortium/portal-visualization/blob/dbcc9aeca5e5e49b2cd44d9cdb4fabd7badd60a1/src/portal_visualization/client.py#L277 and https://github.com/hubmapconsortium/portal-visualization/blob/dbcc9aeca5e5e49b2cd44d9cdb4fabd7badd60a1/src/portal_visualization/builder_factory.py#L85 to use the doc?

@john-conroy As far as I can tell, those usages should all be replaceable. 👍🏻

@lchoy, still waiting for you approval before I merge and deploy on DEV


python3Packages.black: 19.03b0 -> 19.10b0

Motivation for this change
Version bump
Things done

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

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nix-review --run "nix-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

Notify maintainers
cc @sveitser

quite a bit of regressions, please look at the failed packages, pytest-black is the most important:
[10 built (8 failed), 186 copied (436.3 MiB), 184.2 MiB DL]
error: build of '/nix/store/ivl1whsa1c6acsq6hnbf854cndwl054m-env.drv' failed
https://github.com/NixOS/nixpkgs/pull/73053
1 package are marked as broken and were skipped:
bareos

26 package failed to build:
ceph ceph-client datasette fava flexget libceph mnemosyne python37Packages.bugseverywhere python37Packages.cheroot python37Packages.cherrypy python37Packages.portend python37Packages.pyalgotrade python37Packages.pytest-black python37Packages.ws4py python37Packages.zerobin python38Packages.bugseverywhere python38Packages.cheroot python38Packages.cherrypy python38Packages.datasette python38Packages.portend python38Packages.pyalgotrade python38Packages.pyls-black python38Packages.pytest-black python38Packages.ws4py python38Packages.zerobin sambaFull

8 package were build:
git-revise python37Packages.black python37Packages.pyls-black python37Packages.stumpy python37Packages.uarray python38Packages.black python38Packages.git-revise python38Packages.uarray

pytest-black pins specifically 19.03b. There's a (stale) PR upstream but no movement in months: https://github.com/shopkeep/pytest-black/pull/29
pytest-black pins the version for reasons to do with Pipenv not playing nice with prerelease packages. I've patched this, since it shouldn't affect us - should I also push for this upstream?

@jonringer could you have another look? With the proposed patches, none of the remaining failures look black-related. I will open a PR upstream for portend.

failures seem to be unrelated to package bump


Outgoing payment fees too small

The documentation says that fees are calculated based on txn byte size however we're seeing payments get stuck with miners not accepting them even though their fees are allowable, we should probably start tracking average fee on the network to ensure payments are accepted.
Here is a stuck txn from @qlpqlp's testing.
https://dogechain.info/tx/6c4f20969d0bf743ccc8abc4dcc8fe78df00d14bfc08067529db93d755b7f9e7

This was addressed in PR #127 which uses a Core API to estimate current fees, and also uses a minimum fee of 0.01 DOGE.

This was addressed in PR #127  which uses a Core API to estimate current fees, and also uses a minimum fee of 0.01 DOGE.


Downgrade to graphql 15.8.0 to match express-graphql peer

I have reached GraphQL folks on Discord, and they should be fixing urgent things on graphql projects. So hopefully they will soon get to express-graphql as well. Meanwhile I downgraded graphql package to supported version by express-graphql as we are not using anything from newer versions.
Before:

After:

That snapshot change is weird but other than that :shipit:!

I had to look why, and it is change in https://github.com/graphql/graphql-js/pull/3375


Planning Anime

Describe your suggested feature
Show planning anime in a tab or make it open anilist in app to check list.
Other details
No response
Acknowledgements

[X] I have searched the existing issues and this is a new ticket, NOT a duplicate or related to another open or closed issue.
[X] I have written a short but informative title.
[X] If this is an issue with an extension, I should be opening an issue in the extensions repository.
[X] I have updated the app to version <IP_ADDRESS>.
[X] I will fill out all of the requested information in this form.

Could you explain, what you have in mind?
Because how I see it, you can already add an anime to the library, and group it by watching status...


[10.1] ISPN-11419 Deprecate OSGi

https://issues.redhat.com/browse/ISPN-11419

Merged and cherry-picked to master too, thanks Gustavo!


Temp disable app name and region

Current source is causing: NSErrorFailingURLStringKey with no URL present, as probably functions are not configured correctly.

I'm going through some old PRs to see what we can do with them. First, sorry for dropping this on the floor, we do appreciate your contributions though apparently we don't do a good job of showing it.
For this PR specifically, I'm going to close it because it is lacking tests and all our PRs need to have tests.


Defines not possible to evaluate

Due to how the "conditionals" field is constructed, there are ambiguous situations that arise when evaluating them.
Given this series of defines, we can see that we expect both to pass. However only the first will be, if we update our list of defines after the condition evaluates to true.
#ifndef MAYBE_DEFINED_EXTERNALLY
#define MAYBE_DEFINED_EXTERNALLY A_DEFAULT // (will pass) conditionals: [{ "condition": "ifndef", "expression": "MAYBE_DEFINED_EXTERNALLY" }]
#define RELATED_THING A_DEFAULT_AS_WELL // (will not pass) conditionals: [{ "condition": "ifndef", "expression": "MAYBE_DEFINED_EXTERNALLY" }]
#endif // MAYBE_DEFINED_EXTERNALLY

You can see how that series of defines would result in the same data as these, even though they have different behavior.
#ifndef MAYBE_DEFINED_EXTERNALLY
#define MAYBE_DEFINED_EXTERNALLY A_DEFAULT
#endif // MAYBE_DEFINED_EXTERNALLY
#ifndef MAYBE_DEFINED_EXTERNALLY
#define RELATED_THING A_DEFAULT_AS_WELL
#endif // MAYBE_DEFINED_EXTERNALLY

This happens in practice for the IM_COL32_(R|G|B|A)_SHIFT defines:
#ifndef IM_COL32_R_SHIFT
#ifdef IMGUI_USE_BGRA_PACKED_COLOR
#define IM_COL32_R_SHIFT    16
#define IM_COL32_G_SHIFT    8
#define IM_COL32_B_SHIFT    0
#define IM_COL32_A_SHIFT    24
#define IM_COL32_A_MASK     0xFF000000
#else
#define IM_COL32_R_SHIFT    0
#define IM_COL32_G_SHIFT    8
#define IM_COL32_B_SHIFT    16
#define IM_COL32_A_SHIFT    24
#define IM_COL32_A_MASK     0xFF000000
#endif // #ifdef IMGUI_USE_BGRA_PACKED_COLOR
#endif // #ifndef IM_COL32_R_SHIFT

Thinking this through, it's a bit tricky to represent. Maybe something like this could work?
# defines
[
	{
		"conditional": { "condition": "ifndef", "expression": "IM_COL32_R_SHIFT" },
		"true_case": {
			{
				"conditional": { "condition": "ifdef", "expression": "IMGUI_USE_BGRA_PACKED_COLOR" },
				"true_case": {
					"defines": [
						{ "name": "IM_COL32_R_SHIFT", "content": "16" },
						{ "name": "IM_COL32_G_SHIFT", "content": "8" },
						{ "name": "IM_COL32_B_SHIFT", "content": "0" },
						{ "name": "IM_COL32_A_SHIFT", "content": "24" },
						{ "name": "IM_COL32_A_MASK", "content": "0xFF000000" },
					],
				},
				"false_case": {
					"defines": [
						{ "name": "IM_COL32_R_SHIFT", "content": "0" },
						{ "name": "IM_COL32_G_SHIFT", "content": "8" },
						{ "name": "IM_COL32_B_SHIFT", "content": "16" },
						{ "name": "IM_COL32_A_SHIFT", "content": "24" },
						{ "name": "IM_COL32_A_MASK", "content": "0xFF000000" },
					],
				},
			}
		},
	},
]

This would be a special case only for defines, since this is the only section where it gets weird.

"defines" is an optional array of defines at the current define scope.
"condition" is the condition as before. There can only logically be one condition at a time though, to avoid this problem.
"true_case" is required if "condition" has a value
"false_case" is optional if "condition" has a value

I have to admit I'd not really considered the case of evaluating conditional prerequisites on defines themselves, only on other declarations (my assumption being that other languages likely didn't support defines, or wouldn't want to import the C ones as they are mostly fairly C-specific...
Internally the DOM representation of ifdefs is closer to the representation you propose here, so it's definitely not impossible to implement, but I'm slightly nervous about trying to expose that in the JSON because it feels like it will make everything much more complex - consistency would suggest that other declarations should be handled in a similar way, but then we end up needing to wrap everything in conditional blocks... (and also start caring about declaration ordering in the JSON, too)
From what I can see the only case where this is actually an issue right now is the IM_COL32... macros - given their nature I'm wondering if it would make more sense to just add a special-case for those for now that optionally removes the guard define (making the assumption that it's actually pretty rare for people to override them, at least in a scenario where bindings are involved). Does that sound like it would be a sensible solution in the immediate term?


botocore.exceptions.ClientError

hello everyone, i need to cross check the atendance for the employee based on changing the date forward and back, but i am facing the same issue. Is it possible or not?? My assumption is when i checks in my system takes local time and date what i changed (eg: 3 days before from today), AWS will take current date and time. How to resolve this ???
botocore.exceptions.ClientError: An error occurred (InvalidSignatureException) when calling the CompareFaces operation: Signature expired: 20180707T233021Z is now earlier than 20180710T071214Z (20180710T071714Z - 5 min.)

Pretty sure you're in the wrong place, bud.


Import-DbaCsv "FirstRow" Feature

Summary of new feature
I need to import files that have a description in the first few lines of the the file.  The description is followed the header.  I have to alter the file to remove the first few lines with the unwanted description.  It sure would be nice if there was an option to skip the first few lines so that I did not have to alter the file.  With BULK INSERT this is implemented via "firstrow".
Proposed technical details (if applicable)
Latest version of dbatools as of writing
1.0.140

In the interim, you can possibly do something like (Get-Content C:\temp\file.csv | Select-Object -Skip 3) | Write-DbaDataTable


Listed build depends not updates for whatsapp

The listed build dependencies have not been reflected to show what packages on debian/ubuntu are needed to build the latest, which includes whatsapp.

Thanks for reporting @alohawolf - this should be fixed now with above commit.