panic error with cpd-cli adm --accept-all-licenses

When executing cpd-cli adm, version 3.5.1, in a container and using the flag --accept-all-licenses we get the following panic error.
This is happening when cpd-cli is executed by Schematics. We cannot choose how to run the container because it's executed by the Schematics Workspace runtime.
Error:
 [INFO] [2021-01-06 19:41:08-0792] Accepting license for this package
 panic: open /dev/tty: no such device or address

 goroutine 1 [running]:
 log.Panicln(0xc00088e4b0, 0x1, 0x1)
 	/opt/go/src/log/log.go:365 +0xac
 github.ibm.com/privatecloud/icpd_courier/cmd.displayLicense(0xc00081fa80, 0x1d, 0xc0007d25b0)
 	/root/workspace/cpd-v3.5.0/github.ibm.com/privatecloud/icpd_courier/cmd/license.go:45 +0x86
 github.ibm.com/privatecloud/icpd_courier/cmd.acceptPackageLicenses(0xc0007d23f0, 0x67, 0x0, 0x0)
 	/root/workspace/cpd-v3.5.0/github.ibm.com/privatecloud/icpd_courier/cmd/preinstallutils.go:630 +0x4ef
 github.ibm.com/privatecloud/icpd_courier/cmd.parseEntireAssembly(0xc00035a5a0, 0x1, 0x1, 0xc00028df60, 0x1, 0x1, 0x0, 0x0, 0x0, 0xc00050f680, ...)
 	/root/workspace/cpd-v3.5.0/github.ibm.com/privatecloud/icpd_courier/cmd/preinstallutils.go:114 +0x24ae
 github.ibm.com/privatecloud/icpd_courier/cmd.adm(0x1ea0000, 0xc0002a58c0)
 	/root/workspace/cpd-v3.5.0/github.ibm.com/privatecloud/icpd_courier/cmd/adm.go:223 +0x28e

The error is not happening when cpd-cli is executed from a computer. Neither happened with version 3.0. This is a bug introduced in version 3.5.x

@johandry Will run without the flag --accept-all-licenses works? Which OS you are running on? Mac, linux or Windows?

We are running this on IBM Cloud Schematics, which is (or assume it is) a Linux container, but don't know which one.
If I run it without --accept-all-licenses it will ask me to accept the licenses, right? If so, there is no way I can do that as a user, this process is running by Schematics in a container.

@johandry please double-check the flag --accept-all-licenses you used. I looked at the code and it seems that if you specify the flag, you will not reach the line
[INFO] [2021-01-06 19:41:08-0792] Accepting license for this package

Instead, you should see https://github.ibm.com/PrivateCloud/icpd_courier/blob/cp4d-v3.5.1/cmd/preinstallutils.go#L97-L98

@johandry please reopen if this issue is still valid


shared / personal collections

Hello, can someone answer my question? For collection types, shared or personal, does that mean if I'm signed in as user1 and I create some shared collections, then sign out and log in as user2, am I supposed to find the collections that user1 created?

Yes, they are accessible, but by default the user would need to add it to their list in document selection, or add to CLI as default, or one adds to a specific user's auth.json entry.
https://github.com/h2oai/h2ogpt/issues/1515


streaming support

Support for parsing streaming bodies could greatly reduce memory usage for decoding multipart forms. This API would need to be asynchronous, so it could not be used with Codable. However, it could allow you to access multipart parts as they become available, and even stream large parts (like files) by chunk. All while using very little memory if done correctly.

Is this still relevant ?
I'm trying to achieve this by using : https://github.com/mcritz/VaporUploads, but I ended as conclusion that I can't decode a form as same time as i'm streaming the body (because it's streaming the entire form and not only files...)

Vapor 4's multipart parser supports streaming: https://github.com/vapor/vapor/blob/master/Sources/Vapor/Multipart/MultipartParser.swift
This package is deprecated for the time being. Eventually the upgraded multipart code from Vapor 4 will be brought back here.

@siemensikkema is streaming possible right now?
If so, would the correct way to do so be to call .execute(chunk) with each incoming chunk on the MultipartProcessor?

@joshuawright11 Yes, that's the idea! I have yet to try out streaming in a real project but the MultipartParser is built with that in mind.


Cache retention

Please document how long content is kept on the Connected Cache Server.
If it is possible to configure the value, please document that as well
Thanks :-)

Dokumentdetails
⚠ Bearbeiten Sie diesen Abschnitt nicht. Er ist für die Verknüpfung von docs.microsoft.com zum GitHub-Artikel erforderlich.

ID: c1fbe6e8-4883-644e-8412-2e69759fe482
Version Independent ID: 41f3fdea-c476-bd2b-131b-1100bbede7b2
Content: Microsoft Connected Cache - Configuration Manager
Content Source: sccm/core/plan-design/hierarchy/microsoft-connected-cache.md
Product: configuration-manager
Technology: configmgr-other
GitHub Login: @aczechowski
Microsoft Alias: aaroncz

Connected Cache is using IIS Application Request Routing to build the web farms where the content is cached.  The default cache size on disk is set to 100 GB.  If cache size on disk size exceeds the allocated space, then ARR will clear space by removing content based on ARR heuristics. We don't provide any cache purging functionality in ConfigMgr.
One of the ways you can view the size size of the cache on disk is by looking at the Microsoft Connected Cache farm (DOINC) and viewing the properties under Monitoring and Management.

I've made changes for this issue that will publish with the 2002 content, which will go live soon. I'm closing this issue.


siri_rides/list missing some results

Hi,
when trying to use siri_rides/list for getting all rides of a given line today,
I get an empty list (albeit it working for yesterday and the days before).
However, when I use siri_rides/get for a ride that occurs today, it works.
I noticed that this seems to happen because some fields, such as gtfs_ride_id,
are null, so when the gtfs columns are joined to the siri rides, the list becomes empty;
see https://github.com/hasadna/open-bus/issues/404.
There was a very similar issue regarding siri_ride_stops/list;
see https://github.com/hasadna/open-bus-stride-client/issues/8.
It was fixed by changing some joins to outerjoins in siri_ride_stops.py,
and I think a very similar change can be done as well in siri_rides.py;
something like the following (it hasn't been tested, though):
@@ -63,8 +63,8 @@ def _post_session_query_hook(session_query: sqlalchemy.orm.Query):
     return (
         session_query
         .join(model.SiriRoute, model.SiriRide.siri_route_id == model.SiriRoute.id)
-        .join(model.GtfsRide, model.SiriRide.gtfs_ride_id == model.GtfsRide.id)
-        .join(model.GtfsRoute, model.GtfsRide.gtfs_route_id == model.GtfsRoute.id)
+        .outerjoin(model.GtfsRide, model.SiriRide.gtfs_ride_id == model.GtfsRide.id)
+        .outerjoin(model.GtfsRoute, model.GtfsRide.gtfs_route_id == model.GtfsRoute.id)
     )

Thanks!

thanks, fixed


PR for issue #4036

[GSSOC'23] Create Pencil Sketch from Picture #4036

Close #4036

Checklist:

[x] I have mentioned the issue number in my Pull Request.
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have created a helpful and easy to understand README.md

@MohitGupta121 @pranjay-poddar please review this PR and add GSSOC labels and merge it.

Resolve conflicts

@TusharKesarwani I have resolved the conflict.


Fix for lineStyle causes extra draw #2336

Removes the erroneous extra draw on canvas and cairo.

We shouldn't need to call cairo.lineTo here when positionX/Y & startX/Y are already the same.
Also, we're passing true to closePath's strokeBefore param, since hasPath, stroke, and hasStroke are all true.

Any updates on hopefully merging this? It's been very thoroughly battle-tested.


[Feature] Support Docker Healthcheck

Applications do stall without Exit 1 at times, including Unifi-Poller.
It would be nice if we could at least have a handle/call to setup a docker healthcheck or (preferably) include it in the dockerfile.

Can you show me a log of this happening?

I didn't report any behavior, I requested a change of the dockerfile.

 Thanks for the feature request.

@davidnewhall It was meant to be quite arrogant tbh. :')
Good to know it hit it's mark :)
Was it needed? Totally not, but if someone submits a feature request it aint a bug report.

Well in that case.

@davidnewhall I always learned that issues should be evaluated on their merrits, not on your personal feelings. But it's your repo ofcoarse. Your repo your rules.

I'm glad you learned things. That's valuable in this world.

@davidnewhall Glad we agree about something today :)

Anyhow, Ontopic:
are there any (sub) commands of Unifi-Poller that could in theory already be used to poll its status? (last run metrics or something?)


Defect: homebrew installation fails

Avg response time

Defect/Bug Report

OpenCoarrays Version: 1.9.1
Fortran Compiler: gfortran 7.2.0
C compiler used for building lib: gcc 7.2.0
Installation method: brew install opencoarrays
Output of uname -a: Darwin localhost 16.7.0 Darwin Kernel Version 16.7.0: Thu Jun 15 17:36:27 PDT 2017; root:xnu-3789.70.16~2/RELEASE_X86_64 x86_64
MPI library being used: open-mpi 2.1.1 (installed by brew install opencoarrays)
Machine architecture and number of physical cores: quad-core 2.7 GHz Intel Core i7
Version of CMake: not yet installed

Observed Behavior
$ brew install opencoarrays
Warning: opencoarrays 1.9.1 is already installed, it's just not linked.
You can use `brew link opencoarrays` to link this version.

$ brew link opencoarrays
Linking /usr/local/Cellar/opencoarrays/1.9.1...
Error: Could not symlink lib/cmake/opencoarrays/OpenCoarraysConfig.cmake
Target /usr/local/lib/cmake/opencoarrays/OpenCoarraysConfig.cmake
already exists. You may want to remove it:
  rm '/usr/local/lib/cmake/opencoarrays/OpenCoarraysConfig.cmake'

To force the link and overwrite all conflicting files:
  brew link --overwrite opencoarrays

To list all files that would be deleted:
  brew link --overwrite --dry-run opencoarrays

$ brew link --overwrite --dry-run opencoarrays
Would remove:
/usr/local/lib/cmake/opencoarrays/OpenCoarraysConfig.cmake
/usr/local/lib/cmake/opencoarrays/OpenCoarraysConfigVersion.cmake
/usr/local/lib/cmake/opencoarrays/OpenCoarraysTargets.cmake
/usr/local/lib/libcaf_mpi.a

$ brew link --overwrite opencoarrays
Linking /usr/local/Cellar/opencoarrays/1.9.1...
Error: Could not symlink lib/cmake/opencoarrays/OpenCoarraysConfig.cmake
/usr/local/lib/cmake/opencoarrays is not writable.

Steps to Reproduce
# Move MacPorts stuff to a directory outside my PATH:
cd /opt && sudo mv local macports_backup

# Install homebrew:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

# Install GCC
brew install gcc7

# Install OpenCoarrays
brew install opencoarrays

This looks like it's due to a previous version of OpenCoarrays being installed already, either through macports or through the install script or some other means.
What does brew doctor say?

brew doctor was helpful diagnosing this problem. The issue was old OpenCoarrays files from macports or manual/script/CMake installs to /usr/local were still hanging around (and other broken links likely created by macports) and there were permission errors in /usr/local
The fix was to follow the tips at https://docs.brew.sh/Troubleshooting.html, particularly bullet point 4:
cd /usr/local && sudo chown -R $(whoami) bin etc include lib sbin share var Frameworks

After that brew link --overwrite opencoarrays works fine. Once permissions are fixed, if brew doctor complains about broken symlinks, you can run brew prune to get rid of them.
Closing issue as resolved, now that there are notes here, in the event that anyone else is switching from macports to homebrew (@tclune maybe 😄 )


Add Addresses.Balance?

Addressess.Summary may be too request intensive if the Blockchain API endpoint doesn't provide anything related to transactions and thus it could be costly for the API to have to compute totalReceived or txCount. Having Addresses.Balance would just provide the balance. In fact, I'd be in favor of axing Summary altogether. We should start with a simple bare bones common-blockchain so that we can ensure that implementations are simple and straightforward. IMHO common-blockchain is doing too much too early.

@jprichardson I think this would be better solved by a query language such as GraphQL (see https://github.com/common-blockchain/common-blockchain/issues/23).
Re-open if you think otherwise.

If we're going the GraphQL route (which I think we should strongly consider), then yes, I agree. Most methods would be axed ASFAICT. But if we're not, then I think this deserves some thought.
Either way, I'm fine with waiting until we decided on GraphQL. Reopening to keep note of.

@jprichardson :+1: agree.
I mostly wanted to just get settled on the last version of the non-Graph QL specification, because it may be a smaller while and I don't want to leave this half hanging.

Probably NACK on this.  Its too subjective and completely unclear how it would be calculated, especially with things like RBF coming along.

Probably NACK on this. Its too subjective and completely unclear how it would be calculated, especially with things like RBF coming along.

In that case, are you planning on nixing Summary then? As Summary includes the balance :stuck_out_tongue_winking_eye:

@jprichardson sure am.

@jprichardson sure am.
:+1:

Instead I'm opting for a transaction count end point.  Something that just gives you the number of known transactions relative to a script.
It can be used for all the same usages, and, while subjective, doesn't require any complex logic and is a super simple query for most database indexes too.


Main.py ModuleNotFoundError: No module named 'mediabridge'

I don't think the import is working with the main.py file on the main branch, but idk if other machines are different.
Traceback (most recent call last):
  File "/workspaces/MediaBridge/mediabridge/main.py", line 1, in <module>
    from mediabridge.data_processing import wiki_to_netflix
ModuleNotFoundError: No module named 'mediabridge'

Obviously from data_processing import ___ works, but I know we prefer the mediabridge.* format and I don't know if we're just missing something (other than moving the main.py file out of the directory).

What is the command you're using to run the main script? It needs to be run as part of the mediabridge "module". Additionally, you need to prefix the run command with pipenv run so that the required libraries are loaded. So the full command, from the root directory, is:
pipenv run python -m mediabridge.main

I'll document this in the README and then close this issue.

Ah I was just in the pipenv shell running python main.py. Moving to #40 for discussion.


Add spell checker on comments

Hi,
Maybe I'm missing something but it looks like spyder3.1.4 installed with winpython3.6.1 does not offer spelcheck of comments (starting with #). It looks like spellcheck of doctrings is also not supported.
Acording the the internal dependencies checker, I have installed all the python modules needed for a fully featured spyder. Nothing about spellchecks.
Xavier

We have never supported a spell checker in comments nor in docstrings. Besides, we don't have plans to do it in the near future, sorry.

Well, this is bad news as the quality of the comments contribute to the
quality of the code.
This is especially bad for the docstrings as they are often visible in the
end user doc.

On Fri, Aug 18, 2017 at 2:49 PM, Carlos Cordoba<EMAIL_ADDRESS>wrote:

We have never supported a spell checker in comments nor in docstrings.
Besides, we don't have plans to do it in the near future, sorry.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/spyder-ide/spyder/issues/4997#issuecomment-323344683,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ADAlhZLpyOtm0UKj4heKeGaXj3wSn5yDks5sZYhRgaJpZM4O7Ssj
.

We'd grateful to receive a contribution for this, but (as I said) we don't have plans for something like this right now.


ansible(packages): add fpaste as common pkg

Description
Add fpaste as common package installed by ansible.
Fixes # (issue)
Type of change
Please select the appropriate options:

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

Testing
N/A
Checklist

[x] I have performed a self-review of my own code
[ ] If a change is adding a feature, it should require a change to the README.md and the review should catch this.
[ ] If the change is a fix, it should have an issue. The review should make sure the comments state the issue (not just the number) and it should use the keywords that will close the issue on merge.
[ ] A change should not be merged unless it passes CI or there is a comment/update saying what testing was passed.
[ ] PRs should not be merged unless positively reviewed.

:tada: This PR is included in version 1.8.4 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


[CHANGE ME] Re-generated  to pick up changes in the API or client library generator.

This PR was generated using Autosynth. :rainbow:
Here's the log from Synthtool:
synthtool > Cloning googleapis.
synthtool > Ensuring dependencies.
synthtool > Pulling artman image.
latest: Pulling from googleapis/artman
Digest: sha256:90f9d15e9bad675aeecd586725bce48f5667ffe7d5fc4d1e96d51ff34304815b
Status: Image is up to date for googleapis/artman:latest
synthtool > Running generator for google/cloud/redis/artman_redis_v1beta1.yaml.
synthtool > Generated code into /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/js/redis-v1beta1.
synthtool > Running generator for google/cloud/redis/artman_redis_v1.yaml.
synthtool > Generated code into /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/js/redis-v1.
.circleci/config.yml
.circleci/npm-install-retry.js
.eslintignore
.eslintrc.yml
.github/CONTRIBUTING.md
.github/ISSUE_TEMPLATE/bug_report.md
.github/ISSUE_TEMPLATE/feature_request.md
.github/ISSUE_TEMPLATE/support_request.md
.jsdoc.js
.kokoro/common.cfg
.kokoro/continuous/node10/common.cfg
.kokoro/continuous/node10/test.cfg
.kokoro/continuous/node11/common.cfg
.kokoro/continuous/node11/test.cfg
.kokoro/continuous/node6/common.cfg
.kokoro/continuous/node6/test.cfg
.kokoro/continuous/node8/common.cfg
.kokoro/continuous/node8/docs.cfg
.kokoro/continuous/node8/lint.cfg
.kokoro/continuous/node8/samples-test.cfg
.kokoro/continuous/node8/system-test.cfg
.kokoro/continuous/node8/test.cfg
.kokoro/docs.sh
.kokoro/lint.sh
.kokoro/presubmit/node10/common.cfg
.kokoro/presubmit/node10/test.cfg
.kokoro/presubmit/node11/common.cfg
.kokoro/presubmit/node11/test.cfg
.kokoro/presubmit/node6/common.cfg
.kokoro/presubmit/node6/test.cfg
.kokoro/presubmit/node8/common.cfg
.kokoro/presubmit/node8/docs.cfg
.kokoro/presubmit/node8/lint.cfg
.kokoro/presubmit/node8/samples-test.cfg
.kokoro/presubmit/node8/system-test.cfg
.kokoro/presubmit/node8/test.cfg
.kokoro/presubmit/windows/common.cfg
.kokoro/presubmit/windows/test.cfg
.kokoro/samples-test.sh
.kokoro/system-test.sh
.kokoro/test.bat
.kokoro/test.sh
.kokoro/trampoline.sh
.nycrc
CODE_OF_CONDUCT.md
codecov.yaml
npm WARN deprecated<EMAIL_ADDRESS>no longer maintained
npm WARN deprecated<EMAIL_ADDRESS>CircularJSON is in maintenance only, flatted is its successor.

><EMAIL_ADDRESS>install /tmpfs/src/git/autosynth/working_repo/node_modules/grpc
> node-pre-gyp install --fallback-to-build --library=static_library

node-pre-gyp WARN Using request for node-pre-gyp https download
[grpc] Success: "/tmpfs/src/git/autosynth/working_repo/node_modules/grpc/src/node/extension_binary/node-v57-linux-x64-glibc/grpc_node.node" is installed via remote

><EMAIL_ADDRESS>postinstall /tmpfs/src/git/autosynth/working_repo/node_modules/protobufjs
> node scripts/postinstall

npm notice created a lockfile as package-lock.json. You should commit this file.
npm WARN optional SKIPPING OPTIONAL DEPENDENCY<EMAIL_ADDRESS>(node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for<EMAIL_ADDRESS>wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})

added 1141 packages from 1274 contributors and audited 4410 packages in 19.288s
found 0 vulnerabilities

><EMAIL_ADDRESS>fix /tmpfs/src/git/autosynth/working_repo
> eslint --fix '**/*.js'

synthtool > Cleaned up 2 temporary directories.
synthtool > Wrote metadata to synth.metadata.

Codecov Report

Merging #89 into master will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff          @@
##           master    #89   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files           1      1
  Lines           5      5
=====================================
  Hits            5      5

Continue to review full report at Codecov.

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


feat: add state filter to list user orgs api

Pull Request Test Coverage Report for Build<PHONE_NUMBER>3
Details

0 of 6 (0.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.007%) to 30.821%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

internal/api/v1beta1/user.go
0
6
0.0%

Totals

Change from base Build<PHONE_NUMBER>8:
-0.007%

Covered Lines:
7624

Relevant Lines:
24736

💛  - Coveralls


Proper way of exposing configuration

There is issue with current implementation. I'm unable to set initial conditions. The property where I can do it is set during Setup. There is no time when I could set initial conditions because the property is null.

@marcin-golebiowski  You are right about Configurations. I can but what is the purpose of the those properties ? I'm not sure what is a good solution.

They were originally meant to provide a faster way of getting the configuration during runtime. But actually, we can just remove them and make behaviors cache them like they do with other behaviors and parameters.

@marcin-golebiowski 👍

@svenboulanger  Please proceed with that.


Messages sometimes not sent

Message sending (i.e. via the RapidPro API) is handled in an async celery task. This task appears to sometimes be firing before the Message object has been committed to the database. This then causes the task to throw a DoesNotExist exception.

Fixed in https://github.com/rapidpro/chatpro/compare/50275bc9a1c3...dbcd66d26ab2


Proposal: Task execution graph

Another model for task composition (in addition to sequence tasks) would be to support declaring dependencies between tasks, such that invoking a task with dependencies would first run all its dependencies (and their dependencies and so on).
Thus an execution DAG of tasks could easily be defined as in the following
Config proposal A
[tool.poe.tasks]
test = "pytest src"
version.script = "scripts:get_current_version"

  [tool.poe.tasks.build]
  cmd = "docker build -f Dockerfile -t my_app:$VERSION ."
  deps = { "" = ["test -v"], VERSION = "version" }

Config proposal B
[tool.poe.tasks]
test = "pytest src"
version.script = "scripts:get_current_version"

  [tool.poe.tasks.build]
  cmd = "docker build -f Dockerfile -t my_app:$VERSION ."
  deps = ["test -v"]
  uses = { VERSION = "version" }

Note that in this example scenario the dependency on the test task demonstrates that dep tasks could be passed arguments (or even env vars).
This example also demonstrates the output of one task being captured and made available to the dependant task as an env var hence addressing #21. Since this required silencing (capturing) the output of the dependency, this could allow for multiple tasks to be run in parallel if their dependencies are all satisfied at the same time and neither of them will write to the console (related #24).
This could be particularly powerful if combined with #12 , getting us closer to the power of make.
I've started prototyping this already, but comments are more than welcome.

@kikohs I prototyped a solution and made a beta release: https://pypi.org/project/poethepoet/0.11.0b2/
It hasn't been extensively tested, but I'm keen to get feedback on how well it works for your use case, and whether you encounter any issues.

Experimental (but reasonably complete) task execution graph released in v0.11.0.


Update ScriptPod default image

Background
#project-k8s-agent
Upgrade the default script pod image to use a slimmed down image that only has the required dependencies.
[sc-70343]

New shortcut story to review this image before we release the agent EAP: https://app.shortcut.com/octopusdeploy/story/76030/review-the-new-script-pod-container-image


When I use Cache,idName would be '_id'

Is your feature request related to a problem? Please describe.
I'm always frustrated when I use Cache.Sometimes I want an _id, But Function typenameDataIdFromObject get an id.
Describe the solution you'd like
Describe alternatives you've considered
make a wrapper for typenameDataIdFromObject, solutions as follow
typedef Normalization = String Function(Object object);
// typedef DataIdFromObject = String Function(Object node);
Normalization getNormalizationByIdName(String _idName) {
  return (Object object) {
    return objNormalization(object,_idName);
  };
}

String objNormalization(Object object,String valueName) {
  // object is valild and id is exist,then, can Swith to Tag
  if (object is Map<String, Object> &&
      object.containsKey('__typename') &&
      object.containsKey(valueName)) {
    return "${object['__typename']}/${object[valueName]}";
  }
  return null;
}

Additional context

Good addition, can you open a PR for that?

Just make your own custom user-land function for now:
String entityIdFromObject(Object object) {
  if (object is Map<String, Object> &&
      object.containsKey('__typename') &&
      object.containsKey('_id')) {
    return "${object['__typename']}/${object['_id']}";
  }
  return null;
}

Noted though, I think the best solution would be to add something like:
bool containsAll(Map<String, Object> map, List<String> keys) =>
  keys.where((s) => !map.containsKey(s)).isEmpty;

DataIdFromObject compositDataId(List<String> keys, [ String seperator = '/' ]) => (Object object) {
  if (object is Map<String, Object> &&
      containsAll(object, keys)) {
    return keys.map((key) => object[key].toString()).join(seperator);
  }
  return null;
};

I think it so cool. So I want to take a PR for packages/graphql/lib/src/cache/normalized_in_memory.dart.
@micimize


getInitialState -> getInitialSnapshot

@davidkpiano
I see this PR deployed many packages but didn't deployed @xstate/graph and @xstate/test.
It make me get this error from @xstate/test:
machine.getInitialState is not a function

@davidkpiano I see this PR deployed many packages but didn't deployed @xstate/graph and @xstate/test. It make me get this error from @xstate/test:
machine.getInitialState is not a function

Thanks for the report. I'll update those packages.


Add basic missing constraints

CharSequence:

hasLengthEqualTo
isBlank, isNotBlank
isLowercase, isNotLowercase, isUppercase, isNotUppercase
regex with isMatching, isNotMatching
isLengthEqualTo, isLengthNotEqualTo

All collections:

isEmpty, isNotEmpty
isSizeEqualTo, isSizeNotEqualTo

Maybe also support for kotlinX.datetime (if it doesn't already exist?). For those using it, those types are also considered pretty much basic... but I guess it would be in another module...

@dave08 This is already in the roadmap 😉


End-to-end testing

Queries in lodapi repo provide a good test bench to test most of grlc functionality. Automated testing against this repo would be desirable.

Tests added in v1.3.5


New rule: Property units

One rule that we are missing is one to lint which units can be used with specific property values.
SCSS Lint currently does this with https://github.com/brigade/scss-lint/blob/master/lib/scss_lint/linter/README.md#propertyunits though I'm undecided if this is the best way, or if we should consider breaking it up into multiple unit managing rules.
Open to thoughts

I was looking at this the other day, I think it would be a mistake to split this into a per property rule, i.e. a separate rule for border units, margin units etc, there would be so much duplication and complication for users and would make it difficult to implement global units.

Closed with #387


logo to link to home page?

when on the learn website or any of the challenges - the freecodecamp button/logo at the top left links to the learn home page - should it redirect to the main homepage?

Can I work on it?

yes, this one I'm not as sure about - as they may want to keep it how it is, but it's probly somewhere over on the learn repo
here I think https://github.com/freeCodeCamp/learn/blob/master/src/components/Header/index.js

If it’s on the learn repo, then isn’t it a issue for that repo and not this.

Can someone please check my PR on this issue?


typescript functionality

Typescript functionality
First, thanks for your awesome loader.
Problem
I would like to be able to use it in typescript but as you could guess this gives an error:
import wasm from './source.c';

The error is: Cannot find module './source.c' because it expects a .js or .ts file with an export statement.
Do you have any idea of how to make this work?
What I have tried:
source.c
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <emscripten/emscripten.h>

int main(int argc, char ** argv) {
    printf("WASM loaded\n");
}

int EMSCRIPTEN_KEEPALIVE roll_dice() {
    srand(time(NULL));
    return rand() % 6 + 1;
}

wasm.js:
export * from './source.c';

typings.d.ts:
declare module '*'

main.ts:
import * as wasm from './wasm';

wasm.initialize().then((module: any) => {
    const result = module._roll_dice();
    console.log(result);
});

Results
Webpack compiles everything with no errors but  when I open my HTML page on a localhost those are the errors that I get:
wasm streaming compile failed: TypeError: Response has unsupported MIME type
source.c:15:14913

falling back to ArrayBuffer instantiation
source.c:15:14974

on the web, we need the wasm binary to be preloaded and set on Module['wasmBinary']. emcc.py will do that for you when generating HTML (but not JS)
source.c:15:21983

on the web, we need the wasm binary to be preloaded and set on Module['wasmBinary']. emcc.py will do that for you when generating HTML (but not JS)
source.c:15:22002

failed to asynchronously prepare wasm: abort("on the web, we need the wasm binary to be preloaded and set on Module['wasmBinary']. emcc.py will do that for you when generating HTML (but not JS)"). Build with -s ASSERTIONS=1 for more info.
source.c:15:14547

abort("on the web, we need the wasm binary to be preloaded and set on Module['wasmBinary']. emcc.py will do that for you when generating HTML (but not JS)"). Build with -s ASSERTIONS=1 for more info.
source.c:15:21983

abort("on the web, we need the wasm binary to be preloaded and set on Module['wasmBinary']. emcc.py will do that for you when generating HTML (but not JS)"). Build with -s ASSERTIONS=1 for more info.
source.c:15:22002

uncaught exception: abort("abort(\"on the web, we need the wasm binary to be preloaded and set on Module['wasmBinary']. emcc.py will do that for you when generating HTML (but not JS)\"). Build with -s ASSERTIONS=1 for more info."). Build with -s ASSERTIONS=1 for more info.

Thanks for your time.

Hey, have you tried declare module '*.c'; in the .d.ts file? That should allow TS to import the file.

Webpack compiles without errors when using declare module '*.c' in my d.ts file.
I call the wasm code using import wasm from 'source.c'. in my TS file.
But when opening the HTML page on localhost I have:
Uncaught TypeError: Cannot read property 'initialize' of undefined

Basically, wasm is undefined.

Do you have Emscripten installed and did you set the proper path to it in webpack config? Can you compile the source.c using Emscripten?

I am on Windows, the path refers to the emcc.bat file C:/emsdk/emscripten/1.37.33/emcc.bat
I can compile the source.c using emscripten. For example, emcc source.c -s WASM=1 -o source.html works and the html file displays what is written in source.c

Ok, what's your webpack version? I'll try it and see if I can find some solution.

I have webpack version 3.10.0
Many thanks for helping me.

I got it working by using "module": "es2015" in compilerOptions in tsconfig.json. Is that an acceptable solution for you?

Wow, thanks for such a detailed description :-)
As you probably guessed, this loader is a brittle proof-of-concept rather than a production-ready library. I'm sure that Webpack supports the scenario with extracting the imported files to a different folder, but I'm not sure how it should be done.
It's pretty much the same situation as with extracting all CSS to a single file at the root of your app and then importing it in index.html.
I may look at it in the coming weeks.


SQLDatabaseToolkit doesn't work well with Postgresql, it will truncate the last double quotation marks in the SQL

System Info
Langchain: 0.0.184
Python: 3.10.9
Platform: Windows 10 with Jupyter lab
Who can help?
@vowelparrot
Information

[ ] The official example notebooks/scripts
[X] My own modified scripts

Related Components

[X] LLMs/Chat Models
[ ] Embedding Models
[ ] Prompts / Prompt Templates / Prompt Selectors
[ ] Output Parsers
[ ] Document Loaders
[ ] Vector Stores / Retrievers
[ ] Memory
[ ] Agents / Agent Executors
[X] Tools / Toolkits
[ ] Chains
[ ] Callbacks/Tracing
[ ] Async

Reproduction
SQLDatabaseToolkit works well if the SQL doesn't include the double quotation marks at the end, if there is, it will truncate the last double quotation marks, resulting in an endless loop.
Below is the initial code snapshot.

And when I executed it.

The LLM generates the correct SQL, but the toolkit truncats the last double quotation marks.
Expected behavior
Won't truncate the last double quotation marks for PostgreSql.

Could you include the full prefix and query you're using to generate this error please, I'm having a hard time recreating the issue locally? 🙇

Could you include the full prefix and query you're using to generate this error please, I'm having a hard time recreating the issue locally? 🙇

Could you include the full prefix and query you're using to generate this error please, I'm having a hard time recreating the issue locally? 🙇

Oh, just saw your message, below is the prompt, I just changed the original a little.
You are an agent designed to interact with PostgreSQL database.\nGiven an input question, create a syntactically correct {dialect} query to run, then look at the results of the query and return the answer. In the query, please enclose table names and column names with double quotation marks.\nUnless the user specifies a specific number of examples they wish to obtain, always limit your query to at most {top_k} results.\nYou can order the results by a relevant column to return the most interesting examples in the database.\nNever query for all the columns from a specific table, only ask for the relevant columns given the question.\nYou have access to tools for interacting with the database.\nOnly use the below tools. Only use the information returned by the below tools to construct your final answer.\nYou MUST double check your query before executing it. If you get an error while executing a query, rewrite the query and try again.\n\nDO NOT make any DML statements (INSERT, UPDATE, DELETE, DROP etc.) to the database.\n\nIf the question does not seem related to the database, just return "I don\'t know" as the answer.\n

Thanks! I managed to replicate and the fix is now merged, hopefully that resolves your issue for you

Thanks! I managed to replicate and the fix is now merged, hopefully that resolves your issue for you

That's cool, thank you so much.


Update includes for docs/tutorial/code-structure.md

📝 Update includes for docs/tutorial/code-structure.md

Thanks for the effort! This was covered in another PR, so I'll close this one now. :coffee: :cake:


Attribute changed notification hooks

I'm interested in extending attrs to provide change notifications. Or at least making my classes generated with attrs emit notifications when an attribute changes.
How would you go about doing this?
I'm wondering if attrs could generate an 'x'_did_change method/notification hook when synthesizing the attributes. This is similar to traitlets trait change notifications/observations although that's more dynamic as observers can be added and removed at runtime.
import attr
import typing

@attr.s(auto_attribs=True)
class SomeClass:
    a_number: int = 42
    list_of_numbers: typing.List[int] = attr.Factory(list)

    def _a_number_did_change(self, info):
        old = info['old']
        new = info['new']

    def _list_of_numbers_did_change(self, info):
        added = info['added']
        removed = info['removed']

What you're asking for is attrs to start writing a __setattr__ for you too. This could happen and allow us to add setter-validation too by adding our own hooks (which people have been asking for forever). 🤔
You should be able to implement it yourself for now: put the hooks into the attribute's meta field and write a __setattr__ that runs them.

If I remember correctly it's a pile (of bad stuff) and maybe I shouldn't share it here... but I wrote up an implementation of this idea for use in my PyQt applications.  It definitely needs to be rewritten.  It went the route of generating @properties that implement on-change pyqtSignal emission as well as conversion/validation.  The classes processed by this are used to back Qt models in my GUIs.
code: https://github.com/altendky/stlib/blob/fc519e561adddb930c1dc7cdc6a74bd5290d3c95/epyqlib/utils/qt.py#L914
tests: https://github.com/altendky/stlib/blob/fc519e561adddb930c1dc7cdc6a74bd5290d3c95/epyqlib/tests/utils/test_qt.py
Anyways, hopefully this doesn't waste someone else's time.  Figured I'd share something rather than just clicking the subscribe button.

@danieljfarrell hi Daniel, are you planning to work on it? Otherwise I can pick this up. This feature will be handy in our org.

@hynek I saw your comment about __setattr__, what prompted you to abandon it?
https://github.com/python-attrs/attrs/pull/233#issuecomment-323537478

I literally wrote it in the next sentence. :). I didn't want to touch another dunder method but that reason has fallen away since we do touch __setattr__ now for frozen classes.  If I had the time, I'd put it back.

I guess I could imagine an API similar to this:
x = attr.ib(set_hook=validate_if_has_validator)

with the usual syntactic sugar for combination using lists.

Please have a look at #660.

I believe this is fixed.


Add tests to batch_dot

See this issue: https://github.com/keras-team/keras/issues/9862
I added three tests to test the backend.batch_dot() function. They all yield inconsistent behaviour on Theano and Tensorflow backends. I have not tested on CNTK backend because I don't have it running on my machine.
The first test throws error on Theano but not on Tensorflow because Theano does not allow summing over the 0th index in batch_dot while Tensorflow does. The second test throws indexing error on Tensorflow (see this issue: https://github.com/keras-team/keras/issues/9847) and the same error as the first test on Theano. However, there might be some tensor shapes for which the second test works on Theano but not on Tensorflow, but I couldn't think of one immediately. The third test yields tensors of different shapes on the two backends.
I am not sure what is the intended behaviour of batch_dot() in these cases I have illustrated so I couldn't add tests to test_batch_dot_shape(). Perhaps the documentation should be updated to indicate the desired behaviour more clearly so that the functionality could be compared to that.
@farizrahman4u

I browsed the Travis CI logs of the tests. As expected, they fail, but I also found that the test that's supposed to be run with KERAS_BACKEND=tensorflow flag returns this: ../../../miniconda/envs/test-environment/lib/python3.6/site-packages/theano/tensor/basic.py:6201: ValueError
Is this expected behaviour? Why does it do anything in the theano backend when the flag is set to tensorflow?

The three cases are summarized as follows:

axes=0

TF: works well
TH: doesn't work with a message ValueError: axes to sum over must not contain the batch axis (axes[0]=[0]) (can be covered by #9920)
C: works, but returns invalid results (can be covered by #9921)

axes=None

TF: doesn't work with a message TypeError: 'NoneType' object has no attribute '__getitem__' (can be covered by #9922)
TH: works well
C: doesn't work with a message Left operand shape is not compatible with right operand shape (can be covered by #9921)

axes=([1, 2], [1, 2])

Currently, it seems to me that only TensorFlow works well, but I need to check a little more.

@taehoonlee I have not used batch_dot myself in this way, but if batch_dotting 3+ dimensional tensors in general is a real use case, I don't see why this wouldn't be. One could think, for example, batch_dotting two tensors that contain batches of images and (for some reason) wanting to do this for only the spatial dimensions and not the channel dimension. As I wrote above, I'm not quite sure what is this function supposed to do for anything beyond 2D tensors (one batch index + one data index); in my mind, dot product is a vector operation and I don't know what is the consensus on how it should be generalized to tensors of higher rank. I think that it would be clearer if someone who has an idea about this, would write the intended behavior in the documentation as a mathematical formula.
In any case, if you decide that this is not a realistic use case, then the documentation should be changed to indicate this (and optionally the function should raise an error). Now it says: "axes: list of (or single) int with target dimensions. The lengths of axes[0] and axes[1] should be the same." which implies that it should produce meaningful results when axes[0] and axes[1] are lists.

@vkk800, I agree with:

I'm not quite sure what is this function supposed to do for anything beyond 2D tensors.

@fchollet, The summaries are:

K.batch_dot(x, y, axes=0) works well only in TF; the issue of the other backends have been resolved by #9920 and #9921.
K.batch_dot(x, y, axes=None) works well only in TH; the issue of the other backends have been resolved by #9921 and #9922.
K.batch_dot(3D-tensor, 3D-tensor, axes=([1, 2], [1, 2])) produces different results for all the backends. But, the usage looks weird to me and @vkk800. Thus, I wonder how you think about returning ValueError for this case.

All the issues have been resolved by #9920, #9921, #9922, #10020. Thank you for the reports so far @vkk800.


*: rocket -> rkt

huh... I didn't expect travis to pass without the repo rename

very straightforward. LGTM.


Gramine Integartion with Avalon

This PR has the changes required to integrate  @Gramine with Avalon.
Changes includes:

GSC build scripts
Device mapping for gsgx in yaml files
Manifest file (avalon.manifest)
Graphene workload tutorials
few Readme file modifications

@manju956, Have addressed all the review comments and  appended the changes to the same commit itself.

This PR has the changes required to integrate @Gramine with Avalon.
Changes includes:

GSC build scripts
Device mapping for gsgx in yaml files
Manifest file (avalon.manifest)
Graphene workload tutorials
few Readme file modifications

DCO check failed. Include sign-off while creating commit and push


Add foreign function interface (ffi) support

Hello @mdsteele,
I wanted to add support for reading MSI files on all platforms (Windows, Linux, and macOS) to a project written in C#.  While researching, I found no C# libraries that were platform-independent and could work with MSI files on all OSes but found this Rust library instead. Looking into calling Rust functions from C#, I found several guides on the internet that suggested making some changes to the Rust code (and this PR does those changes).
However, there are some "warnings" emitted by the compiler after adding #[no_mangle] trait. I am not familiar with Rust, and hence, don't know if it's safe to ignore those warnings or whether we need to make some changes in the internal code of the library. Therefore, I kindly request you to look into making the needed changes (if required) and add support for this library to be able to call from .NET C#.
Thanks.
References:

https://arschles.com/blog/csharp-rust
https://copyprogramming.com/howto/calling-rust-from-c#
https://codingupastorm.dev/2020/05/04/executing-rust-from-csharp

@vedantmgoyal2009 hello! If we want to create ffi for the create it will be better to create separate create with C interface.

The only step that I'm missing is generating header files, and I guess that is for C-language, whereas I need to call functions in C# (.NET). As far as I know header files are not required for C#. I have included some links in the original comment, and none of them mentions about it.

Well, I don't understand how and who will free memory from objects.

As your first link (https://arschles.com/blog/csharp-rust) notes, the basic idea is to create a C interface for the Rust code, and then call those C functions from C# using C#'s FFI.  Since C# is garbage-collected and Rust isn't, and the msi crate's various methods return complex objects (not just primitives like ints), you may need to think carefully about memory management and ownership semantics when designing that interface.
Unfortunately, I don't have very much experience with Rust's FFI; in particular, I've never used cbindgen, and don't know what its limitations are, so I have no idea whether or not it will work here.

Hi, sorry for the slow reply.
Per previous comment, I believe it would be better for the new FFI-specific functions/types/dependencies to live in a separate crate (either in this repo, or another), so that they don't pollute the msi crate for pure-rust callers.  This new crate would presumably be called msi-ffi.  This r/rust post has some more discussion on this, though I'm having trouble finding a more authoritative source for best practices here.

@mdsteele I've updated the PR again. This time, with a separate crate 🙂🎉

@mdsteele please review

@mdsteele I've done the changes, please review...

@mdsteele please review...


rules.abaplint.org, persist filter in url

and change color of the toggles when toggled on

ok for now, closing


niv: mark as not broken

The package used to depend on the "broken" github library. This
dependency was dropped and the package now builds.

Motivation for this change
Things done

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

[ ] NixOS
[ ] macOS
[x] 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"
[ ] 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
[ ] Fits CONTRIBUTING.md.

Notify maintainers
@basvandijk @peti is this the right way to unbreak a Haskell package? I followed the instructions here but might have missed something: https://www.youtube.com/watch?v=KLhkAEk8I20

@nmattia this wasn't backported to the 19.09 branch, right?

@flokli I ... have no idea.

I assume this was merged in after the branchoff, but before the release, and nobody did "backport" it to 19.09.
I just checked out release-19.09 - it is still marked as broken there. Do you want to give it a try if this PR can just be cherry-pick -x-ed on that branch and unbreaked there, too?


add timestamp in erc20 transfers &  set max_per_page to 100

Codecov Report

Merging #51 into master will not change coverage.
The diff coverage is 100%.

@@           Coverage Diff           @@
##           master      #51   +/-   ##
=======================================
  Coverage   98.53%   98.53%
=======================================
  Files          57       57
  Lines        1636     1636
=======================================
  Hits         1612     1612
  Misses         24       24

Impacted Files
Coverage Δ

app/serializers/api/erc20_transfer_serializer.rb
93.33% <100%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


Using Box results in compiler error

Hi,
I need to pass Bincode options to a function without using generics. However, when I try to use the function signature
fn test(config: Box<dyn bincode::Options>)
the compiler complains with:
the value of the associated types `Endian` (from trait `config::internal::InternalOptions`), `IntEncoding` (from trait `config::internal::InternalOptions`), `Limit` (from trait `config::internal::InternalOptions`), `Trailing` (from trait `config::internal::InternalOptions`) must be specified`.

Could someone please point me in the right direction?
Thanks!

The way Options is implemented, with tons of generic types, makes it very cumbersome. My use case: I wanted to store it in lazy_static! so I can easily use the same options in all serialize/deserialize calls in my library.

This usage is unfortunately not currently supported. The Options system uses types, instead of values, to encode the options in order to be able to avoid branches on hot paths when encoding/decoding. This is possible to do in a more elegant and trait-object friendly way on more modern Rust, but the low MSRV for the 1.x.x family of bincode releases limits our options.

As a stop-gap measure could we un-deprecate the Config struct until a way is found to support this usage scenario with the new Options system?

Would you mind answering a question so we can better understand your usecase:
Why exactly are you trying to pass the options into a method as a trait object? Are you trying to dynamically alter the serialization/deserialization behavior at run time, or are you just trying to avoid having to deal with constructing the options object?

@tv42 For your use case, it seems like it would be more appropriate to use a type alias for your options, or just define a set of methods such like
pub(crate) fn deserialize<'a, T>(&self, bytes: &'a [u8]) -> Result<T>{
    bincode::DefaultOptions::new().deserialize(bytes)
}

pub(crate) fn serialize<S: ?Sized + Serialize>(self, t: &S) -> Result<Vec<u8>> {
    bincode::DefaultOptions::new().serialize(t)
}

I have those two functions. That still repeats the options building, but only once.
I just tested this to work, too:
    type MyBincodeOptions = bincode::config::WithOtherEndian<
        bincode::config::WithOtherIntEncoding<
            bincode::config::WithOtherTrailing<
                bincode::config::WithOtherLimit<
                    bincode::config::DefaultOptions,
                    bincode::config::Bounded,
                >,
                bincode::config::RejectTrailing,
            >,
            bincode::config::VarintEncoding,
        >,
        bincode::config::BigEndian,
    >;
    lazy_static! {
        static ref BINCODE_OPTIONS: MyBincodeOptions = bincode::DefaultOptions::new()
            .with_limit(10000)
            .reject_trailing_bytes()
            .with_varint_encoding()
            .with_big_endian();
    }

Now I'm still repeating the options, in different formats, but at least the compiler will yell at me if I get it wrong. It sure ain't pretty, though!

To your first point, yes it does still technically repeat the options, but that is idiomatic usage, and I don't believe the desire to only say things once is productive in this case. If you are concerned about making sure that your options are compatible everywhere, might I suggest a simple round trip unit test?
I will admit to the long type signatures being a bit ugly, but, and i was corrected by another maintainer on this, this type-based approach is actually required to guarantee keeping the branches out of the hot path, and is a small price to pay for such.


Add ERC-721 Deposit Support

📄 Context
DApps accept deposits of ERC-721 tokens by interacting with the ERC721Portal smart contract.
Before the transfer, the caller should change the token's approved Address to the Portal Address.
✔ Solution
Documentation about the ERC-721 transfer:
https://next.docs.cartesi.io/cartesi-rollups/api/json-rpc/portals/ERC721Portal/

The input for the application should use the autocomplete by fetching the Apps list from the API.
The input for ERC-721 contract. ps: may have autocomplete in the future (new feature in the API required)
The input for the token-id.
There are two new fields for the Advanced area, unlike the ERC-20, which has one.

One for the Base layer.
One for the execution layer.

📈 Subtasks

[ ] Create the form to deposit ERC-721 tokens.
[ ] Implement the approve transaction.
[ ] Implement the depositERC721Token transaction
[ ] Add test cases

🎯 Definition of Done

[ ] The transaction can be completed with success.

@tuler, is there anything I missed in the details of this issue?
Also, I think that will spawn a new issue on the API to start looking into the ERC721Portal as the sender to index token meta [name, token, tokenUri] if that is useful. cc: @guidanoli

EIP-721 also defines two OPTIONAL extensions for token contracts.
You can check if any given token contract implements an extension through EIP-165.

ERC721Metadata:

name()(string) — token name
symbol()(string) — token symbol
tokenURI(uint256)(string) — token URI from token ID

ERC721Enumerable:

totalSupply()(uint256) — number of tokens $n$
tokenByIndex(uint256)(uint256) — token ID from index $\in [0,n)$
tokenOfOwnerByIndex(address,uint256)(uint256) — token ID from owner $\alpha$ and index $\in [0,m)$, where $m := balanceOf(\alpha)$

For enumerable ERC-721 tokens, you can:

list all tokens, with totalSupply and tokenByIndex
list all tokens owned by some address, with balanceOf and tokenOfOwnerByIndex

Either one could be used for auto-complete.

@guidanoli,
Humm, I think initially making use of the meta (name + symbol) to behave like the other forms that display the token symbol + the enumerable (balanceOf + tokenOfOwnerByIndex) to fill a <Select /> to select the token-id the user wants to make the transfer is an excellent first version, what do you guys think? Settling for that I will just polish the issue for situations and messages to be displayed and remove the Status labels.
cc: @tuler (Emojis also count 😄 )

@brunomenezes Just pointing out that I am not sure how widely used is the enumerable extension, so you might want to do some research to evaluate how critical would this feature be. :grin:

I updated the description with more information and also extra information to help during development. Thanks, @guidanoli, for the insights and for pointing to the CryptoKitties. It does not have the extensions you mentioned, so it is an excellent material to use during dev.


CDF Login using OTA

Changes for CDF login flow using OTA credentials.

Current Build Failures are not related to these changes. Team is working on fixing these failures.

Merging the PR as it is approved by 2 reviewers (Tested these changes on CDAP as well as on CDF setup)


[Profiler] Use tabular design for HTTP request/headers

Q
A

Bug fix?
no

New feature?
yes

BC breaks?
no

Deprecations?
yes

Related tickets
partially #245

Documentation

License
MIT

What's in this PR and why?
Improved profiler design. Check Before and After. Also check linked issue.
Checklist

[x] Updated CHANGELOG.md to describe BC breaks / deprecations | new feature | bugfix

Out of scope

<t(d|h)> text trimming. I just want to make this simple first time. This can be added in future, at this time horizontal scrolling works perfect here.
Syntax highlighting for body. Should be done in separate PR, I want to minimze scope here which will help review and merge this faster.

awesome, thanks! and completely agree to keep syntax highlighting or more complicated layouting tweak to separate pull requests to make it easier to review.
can you please rebase? there is a conflict (i guess because #354 adding a link to the debug token)

I've slightly changed the design of #354, because its label style didn't fit in my feature, hopefully that's fine.

i like it! @dbrumann as you contributed the profile link, i ask you if you are happy with this too or want a change?

These changes look great. :+1: I like it. I will have a look at the code changes later today, but consider the end result approved

It just accured to me that maybe we could just highlight any link in header table? Because if you notice, there is a x-debug-token-link header there already. That would be more universal

as this is a very specific thing to symfony, i like the link at the top.
additionally detecting urls in headervalues and link them sounds like a good idea (for a separate pull request)

Allright. We can also reduce complexity further by getting token link from header to display in twig, then Profiler no longer needs to store it separately.

indeed. i see you removed the token from the display and from the profiler data (i think thats good, the token code does not help and is annoying to copy-paste if its part of a link anyways, better copy-paste from the headers). want to do that in this PR or separately?

I can do it here

done

nice!


[proxy] Multiple model placeholders in a custom plugin

/cc @FinalAngel
See http://stackoverflow.com/questions/27520734/django-cms-multiple-model-placeholders-in-a-custom-plugin
Is this a bug in django CMS? Is this a CSS issue, a documentation issue?
Just wanted to get some eyeballs on this.

The Placeholders position within the structure view get positioned where the content would be. So currently if there are multiple placeholder at the same location, they get positioned absolute on each other..

I'd like to also point out that these are the types of issues that my recent pull: #3595 aims to solve, but at the plugin level, not the placeholder level, like this one seems to require. If this was about plugins, I'd say this is a user-project implementation issue, but given that we do not supply any tools to deal with this at the placeholder level, I'm inclined to chalk this up as a CMS bug. Comments? @FinalAngel?

yeah you could build in some collision detection @mkoistinen but than I'd rather go for the updated mode on 3.2 later on (where this does not matter anymore)

updated the rendering in 3.2 :)


DOC: add About Us page

Fixes GH-182

I think we should list the maintainers in a section above the institutional partners (credit where credit is due, so folks who do the heavy lifting first)

Yes, I was on the edge about it, but didn't include it because we already have the contributors section in the index, but I'll add it :+1:

The logo you used is outdated, can you please find the new logo?

I copied from NumPy as the ones from the website are not SVG, and I was only able to find up-to-date vectorized logos for Labs in our internal docs. Should I put Quansight Labs instead? Otherwise, I can ping someone to find an up-to-date SVG of the Quansight logo.

I sent you a logo file.
Also, in terms of giving credit, I think it's worth mentioning the Meson maintainers for all their help, and in particular Eli Schwartz, Dylan Baker and Jussi Pakkanen. I checked the Meson docs, but there's no list - all I could find in that vein is the 1.0.0 release blog post (https://nibblestew.blogspot.com/2022/12/after-exactly-10-years-meson-100-is-out.html)

because we already have the contributors section in the index

inserting a link to https://meson-python.readthedocs.io/en/latest/#contributors is also helpful.

I plan to merge this soon, just a ping for @dnicolodi, @henryiii and @lithomas1 for visibility, since they're mentioned by name.

Why isn't the REUSE thing not complaining that the Quansight logo file hasn't an associate license or copyright statement?

This is superseded by gh-445, so I will close this PR. Thank you for the work on this @FFY00 and the review @dnicolodi.


Update selection when selected favourite torn out

Looks fine to me, just one small thing (but that's a matter of preference, imo)


MyCarePlanner browser cache issue

From Matt:
I wanted to bring to your attention an issue with the MyCarePlanner browser cache.  Dr. Dorr reported yesterday that “the browser retained the cache for the wrong site when [he] tried to log in anew with the same patient.”
He cited the following – when he launched via this link:
https://haikuor.providence.org/fhirproxy/oauth2/authorize?response_type=code&client_id=<...>&scope=launch launch%2Fpatient openid fhirUser patient%2FPatient.read patient%2FPractitioner.read patient%2FRelatedPerson.read patient%2FCondition.read patient%2FDiagnosticReport.read patient%2FObservation.read patient%2FProcedure.read patient%2FCarePlan.read patient%2FCareTeam.read patient%2FGoal.read patient%2FImmunization.read patient%2FMedicationRequest.read patient%2FMedication.read patient%2FProvenance.read patient%2FOrganization.read&redirect_uri=https%3A%2F%2Fpatient-mccecare2-dev.ohsu.edu%2Fmycareplanner%2Findex.html&aud=https%3A%2F%2Fhaikuor.providence.org%2Ffhirproxy%2Fapi%2FFHIR%2FR4%2F&state=cIAMY9RQIrs6ZhHD&code_challenge=LSqV-HMnobGbWPSfywyuLmVpuykF_m9cEtObT0hVV88&code_challenge_method=S256
he was redirected here:
https://epmychdev2.ohsu.edu/MyChartPOC/Extensibility/Redirection/FdiRedirection?option=eCarePlan
TL;DR: attempting to launch against Providence appeared to actually launch for OHSU.
Clearing the browser cache resolved the issue.

Have not been able to replicate this. This can be affected from Dan's most recent changes so will revisit this after.

Will send email to Matt for dr dorr for more information


change readme

What is the purpose of the change
update readme
Brief changelog
XX
Verifying this change
XXXX
Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Make sure there is a Github issue filed for the change (usually before you start working on it). Trivial changes like typos do not require a Github issue. Your pull request should address just this issue, without pulling in other changes - one PR resolves one issue.
[ ] Format the pull request title like [ISSUE #123] Fix UnknownException when host config not exist. Each commit in the pull request should have a meaningful subject line and body.
[ ] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
[ ] Write necessary unit-test to verify your logic correction, more mock a little better when cross module dependency exist.
[ ] Run `mvn clean compile --batch-mode -DskipTests=false -Dcheckstyle.skip=false -Drat.skip=false -Dmaven.javadoc.skip=true to make sure basic checks pass.

Codecov Report

Merging #967 (ab81a27) into develop (4836ee0) will increase coverage by 0.02%.
The diff coverage is n/a.

@@              Coverage Diff              @@
##             develop     #967      +/-   ##
=============================================
+ Coverage      21.31%   21.33%   +0.02%
- Complexity       435      436       +1
=============================================
  Files            149      149
  Lines           4799     4799
  Branches         726      726
=============================================
+ Hits            1023     1024       +1
  Misses          3690     3690
+ Partials          86       85       -1

Flag
Coverage Δ

unit
21.33% <ø> (+0.02%)
:arrow_up:

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

Impacted Files
Coverage Δ

.../mapping/AdminServiceInstancesChangedListener.java
100.00% <0.00%> (+7.69%)
:arrow_up:

Continue to review full report at Codecov.

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


Add order in the changelog directory by formating it by adding leading zeroes

WARNING: This has breaking changes!!!
Instead of having the directories like this:
changelog/
  0.0.1
  1.0.0
  1.1.0
  2.0.0

They are now presented like this:
changelog/
  000000001
  001000000
  001001000
  002000000

This will be the first step in fixing https://github.com/whitecloakph/changelog-sh/issues/20


Add i18n keys to ShowProjectLinks component

This ShowProjectLinks component is mostly untranslated. Keys should be added to the JSON files and used in the component so it can be translated. There's some docs that may be helpful here.

@moT01 Do the translation first needs to be done on Crowdin and after that make necessary changes to ShowProjectLinks?

I don't believe so - you can add the keys to the JSON files for all the languages and use English values for now. Then, changes the component so it uses those keys. After that, the next time the files are uploaded to crowdin, they will contain the new strings so they can be translated.

Yes.


Center current line when setting cursor position in a TextEdit

Godot 3.1+
When using TextEdit.cursor_set_line(), the view almost always end up with that line at the very top or at the very bottom depending on where the cursor was initially. I would like that line to be centered visually, which appears to be done by calling center_viewport_to_cursor(), but it's not exposed.
I would also like to have an option to anchor that line at the top instead, so that when I go to that line, the view scrolls in such a way it is at the top, if possible, because sometimes I don't need to show preceding text.

Related to #24444.

center_viewport_to_cursor is exposed in gdscript starting in 3.2 (as seen in related issue).
Here's a demo project: 26206.zip
It demonstrates centering and can also make a line appear at the top (jank/hack: it does this by first moving the cursor to the last line, so that it will always travels upwards to the desired line and so is at the top).

Thanks for testing and making a demo. It seems to me like this issue is pretty much addressed indeed.


Fixed bug in --resolve-extensions parameter documentation

What kind of change does this PR introduce?
bugfix

Did you add tests for your changes?
no - no need for them

If relevant, link to documentation update:

Summary

More info can be found here: https://github.com/webpack/webpack/issues/5451
Does this PR introduce a breaking change?
no

Other information
Really trivial change - just fixed typo in documentation

Thanks


Jinja templating broken in action notify section

When I run an action and try to reference any of its output values in jinja template format, the literal string of the template itself is used. For example, the message output is "@channel: Action run by {{action_context.user}} succeeded. Cmd run was {{cmd}}."
The documentation demonstrates this feature here: https://docs.stackstorm.com/chatops/notifications.html#jinja-templating-in-message-and-data

@cwkatzmann When referring to the output and parameters, are you using {{ action_parameters.cmd }} and {{ action_parameters.output }}. The context "action_parameters" is required.

Related: https://github.com/StackStorm/st2/issues/3403

@lakshmi-kannan i've been doing some digging on this and noticed the same thing.
@cwkatzmann original problem came from the following action yaml:
---
name: "guest_wifi"
runner_type: "local-shell-cmd"
parameters:
  cmd:
    type: "string"
    default: "cat /home/stanley/guest_wifi.txt"
notify:
  on-complete:
    routes:
    - chatops_override
    message: "{{action_results.stdout}}"

I did some digging and printed out the Jinja context before rendering the message and noticed that action_results is empty:
st2notifier.log:2017-06-16 16:00:24,003 44250928 INFO notifier [-] nmaludy: context = {'action_context': {u'user': u'st2admin'}, 'action_results': {}, 'action_parameters': {u'cmd': u'cat /etc/hosts'}, 'st2kv': {'system': <st2common.services.keyvalues.KeyValueLookup object at 0x2b0e250>}}

https://github.com/StackStorm/st2/blob/3a615564218323be52d6a541a4eb249b7a0590cd/st2actions/st2actions/notifier/notifier.py#L210
It looks like execution.result is being used to populate the action_result context and, in my case, that result is empty in the execution object on the line of code i linked to above.
ActionExecutionDB(action={u'runner_type': u'local-shell-cmd', u'name': u'local-notify', u'parameters': {u'cmd': {u'required': True, u'type': u'string', u'description': u'Arbitrary Linux command to be executed on the remote host(s).'}, u'sudo': {u'immutable': True}}, u'tags': [], u'enabled': True, u'entry_point': u'', u'notify': {u'on-complete': {u'routes': [u'slack'], u'message': u'"@channel: Action run by {{ action_context.user }} succeeded. Cmd run was {{ action_parameters.cmd }}."'}}, u'uid': u'action:examples:local-notify', u'pack': u'examples', u'ref': u'examples.local-notify', u'id': u'58c9debda814c063ec6296d7', u'description': u'Action that executes an arbitrary Linux command on the localhost.'},
                  children=[],
                  context={u'user': u'st2admin'},
                  end_timestamp=None,
                  id=5944415da814c0293f8ffe43,
                  liveaction={u'callback': {}, u'runner_info': {u'hostname': u'stackstorm.maludy.home', u'pid': 10412}, u'notify': {u'on-complete': {u'routes': [u'slack'], u'message': u'"@channel: Action run by {{ action_context.user }} succeeded. Cmd run was {{ action_parameters.cmd }}."'}}, u'parameters': {u'cmd': u'cat /etc/hosts'}, u'action': u'examples.local-notify', u'action_is_workflow': False, u'id': u'5944415da814c0293f8ffe42'},
                  log=[{u'status': u'requested', u'timestamp': datetime.datetime(2017, 6, 16, 20, 36, 45, 929000, tzinfo= < bson.tz_util.FixedOffset object at 0x2c88250 > )},
                       {u'status': u'scheduled', u'timestamp': datetime.datetime(2017, 6, 16, 20, 36, 45, 999000, tzinfo= < bson.tz_util.FixedOffset object at 0x2c88250 > )},
                       {u'status': u'running', u'timestamp': datetime.datetime(2017, 6, 16, 20, 36, 46, 60000, tzinfo= < bson.tz_util.FixedOffset object at 0x2c88250 > )}],
                  parameters={u'cmd': u'cat /etc/hosts'},
                  parent=None,
                  result={},
                  rule={},
                  runner={u'runner_module': u'local_runner', u'uid': u'runner_type:local-shell-cmd', u'name': u'local-shell-cmd', u'runner_parameters': {u'kwarg_op': {u'default': u'--', u'type': u'string', u'description': u'Operator to use in front of keyword args i.e. "--" or "-".'}, u'cmd': {u'type': u'string', u'description': u'Arbitrary Linux command to be executed on the host.'}, u'timeout': {u'default': 60, u'type': u'integer', u'description': u"Action timeout in seconds. Action will get killed if it doesn't finish in timeout seconds."}, u'env': {u'type': u'object', u'description': u'Environment variables which will be available to the command(e.g. key1=val1,key2=val2)'}, u'sudo': {u'default': False, u'type': u'boolean', u'description': u'The command will be executed with sudo.'}, u'cwd': {u'type': u'string', u'description': u'Working directory where the command will be executed in'}}, u'enabled': True, u'id': u'58c9c9a1a814c00df78edaa9', u'description': u'A runner to execute local actions as a fixed user.'},
                  start_timestamp="2017-06-16 20:36:45.918003+00:00",
                  status="running",
                  trigger={},
                  trigger_instance={},
                  trigger_type={},
                  web_url="https://xxx/#/history/5944415da814c0293f8ffe43/general")

@lakshmi-kannan this appears to be related to a race-condition on startup.
About 50% of the time if i st2ctl restart the action's result is populated, the other 50% of the time it is not.
During the failure mode the only way i can get it to recover is to st2ctl restart and hope that it initializes correctly.
Example of the result being populated in the context properly:
st2notifier.log:2017-06-16 16:48:49,806 63852048 INFO notifier [-] nmaludy: context = {'action_context': {u'user': u'st2admin'}, 'action_results': {u'failed': False, u'stderr': u'', u'return_code': 0, u'succeeded': True, u'stdout': u'<IP_ADDRESS>   localhost localhost.localdomain localhost4 localhost4.localdomain4\n::1         localhost localhost.localdomain localhost6 localhost6.localdomain6'}, 'action_parameters': {u'cmd': u'cat /etc/hosts'}, 'st2kv': {'system': <st2common.services.keyvalues.KeyValueLookup object at 0x3b9df50>}}

Then after a restart:
st2notifier.log:2017-06-16 16:50:01,252 63850128 INFO notifier [-] nmaludy: context = {'action_context': {u'user': u'st2admin'}, 'action_results': {}, 'action_parameters': {u'cmd': u'cat /etc/hosts'}, 'st2kv': {'system': <st2common.services.keyvalues.KeyValueLookup object at 0x3ad1610>}}

Another interesting note (thanks to @Mierdin )
The st2 trigger-instance command shows the result's stdout properly, even though the context given to jinja is empty:
[root@stackstorm st2]# st2 trigger-instance get 59444a59a814c043a52eda5e
+-----------------+--------------------------------------------------------------+
| Property        | Value                                                        |
+-----------------+--------------------------------------------------------------+
| id              | 59444a59a814c043a52eda5e                                     |
| trigger         | core.st2.generic.notifytrigger                               |
| occurrence_time | 2017-06-16T21:15:05.582000Z                                  |
| payload         | {                                                            |
|                 |     "status": "succeeded",                                   |
|                 |     "start_timestamp": "2017-06-16T21:15:05.295975+00:00",   |
|                 |     "route": "slack",                                        |
|                 |     "runner_ref": "local-shell-cmd",                         |
|                 |     "channel": "slack",                                      |
|                 |     "action_ref": "examples.local-notify",                   |
|                 |     "data": {                                                |
|                 |         "result": "{"failed": false, "stderr": "",           |
|                 | "return_code": 0, "succeeded": true, "stdout": "<IP_ADDRESS>    |
|                 | localhost localhost.localdomain localhost4                   |
|                 | localhost4.localdomain4\n::1         localhost               |
|                 | localhost.localdomain localhost6 localhost6.localdomain6"}"  |
|                 |     },                                                       |
|                 |     "message": ""@channel: Action run by st2admin succeeded. |
|                 | Cmd run was cat /etc/hosts."",                               |
|                 |     "execution_id": "59444a59a814c043a7402e2b",              |
|                 |     "end_timestamp": "2017-06-16T21:15:05.528862+00:00"      |
|                 | }                                                            |
| status          | processed                                                    |
+-----------------+--------------------------------------------------------------+

2017-06-16 17:15:05,562 62465840 INFO jinja [-] Rendering string "@channel: Action run by {{ action_context.user }} succeeded. Cmd run was {{ action_parameters.cmd }}.". Super context={'action_parameters': {u'cmd': u'cat /etc/hosts'}, '__context': {'action_context': {u'user': u'st2admin'}, 'action_results': {}, 'action_parameters': {u'cmd': u'cat /etc/hosts'}, 'st2kv': {'system': <st2common.services.keyvalues.KeyValueLookup object at 0x3c6d350>}}, 'action_results': {}, 'action_context': {u'user': u'st2admin'}, 'st2kv': {'system': <st2common.services.keyvalues.KeyValueLookup object at 0x3c6d350>}}
2017-06-16 17:15:05,566 62465840 INFO jinja [-] Mapping: {'message': u'"@channel: Action run by {{ action_context.user }} succeeded.  Cmd run was cat /etc/hosts."'}, context: {'action_context': {u'user': u'st2admin'}, 'action_results': {}, 'action_parameters': {u'cmd': u'cat /etc/hosts'}, 'st2kv': {'system': <st2common.services.keyvalues.KeyValueLookup object at 0x3c6d350>}}

@nmaludy Thanks for digging in and posting a simple action to repro. From your logs here https://github.com/StackStorm/st2/issues/3487#issuecomment-309129240, it looks like the action execution status is pending and we shouldn't even hit the code to build the jinja context etc. See https://github.com/StackStorm/st2/blob/3a615564218323be52d6a541a4eb249b7a0590cd/st2actions/st2actions/notifier/notifier.py#L83. So something goofy is going on. I'll use your action and try to repro.

I reproed the issue and I figured out the root cause. We have two data models - LiveAction and Execution. When an action goes through various stages, LiveAction and Execution both get updated. LiveAction is a shorter "control" data model and "Execution" pretty much contains more information about the trigger and other contextual information. The commits to the models are async. Whenever a model gets updated, a new message is also posted in rabbitmq which is what the st2 components consume. Notifier consumes the LiveAction queue as well. The funny thing is LiveAction turns to "succeeded" state and we lookup the execution model but it hasn't been updated yet for whatever reason. So we are looking up a stale object which has no results populated yet and hence the bug. We initially discussed changing the notifier to consume the executions topic in rabbitmq as opposed to liveaction. I'll look into these changes but be forewarned that this is an invasive change and needs to tested carefully. I hope to fix this in the next release. (ETA: 3-4 weeks).

@cwkatzmann @nmaludy Can you please test these changes? It should be in unstable repos in a few hours if our promotion workflows succeed. You can validate the SHA by checking /opt/stackstorm/st2/package.meta and comparing against https://github.com/StackStorm/st2/commits/master.


Blocking calls for gRPC and HTTP even though using Reactor

Expected Behavior
Implementations of DaprClient API being non-blocking.

Actual Behavior

DaprClient API is reactive with Reactor. However, its implementations (gPRC and HTTP/1.x) at the moment  are blocking, which defeats the purpose of using Reactive API.
gRPC:
return Mono.fromCallable(wrap(context, () -> {
        ListenableFuture<DaprProtos.GetStateResponse> futureResponse = client.getState(envelope);
        return buildStateKeyValue(get(futureResponse), key, options, type);
      })).map(s -> new Response<>(context, s));

  private static <V> V get(ListenableFuture<V> future) {
    try {
      return future.get();
    } catch (Exception e) {
      DaprException.wrap(e);
    }

    return null;
  }

HTTP/1.1:
  public Mono<Response> invokeApi(
          String method,
          String[] pathSegments,
          Map<String, String> urlParameters,
          byte[] content,
          Map<String, String> headers,
          Context context) {
    return Mono.fromCallable(() -> doInvokeApi(method, pathSegments, urlParameters, content, headers, context));
  }

Note Mono.fromCallable only adapts the API to reactive. It still blocks a thread, be it the calling thread or the thread the Mono is subscribed on.
Steps to Reproduce the Problem

Release Note

RELEASE NOTE: FIXED implementations of DaprClient API were blocking for gRPC and HTTP.

@xiazuojie Do you have a proposal to fix this? The same also happens in the gRPC client. Since Java does not have async/await like .Net, I wonder how the Java community solves this.

@xiazuojie Do you have a proposal to fix this? The same also happens in the gRPC client. Since Java does not have async/await like .Net, I wonder how the Java community solves this.

@xiazuojie Do you have a proposal to fix this? Since Java does not have async/await like .Net, I wonder how the Java community solves this.

Async is natively supported by gRPC java. For HTTP/1.x it's much more complicated.
I'll PR for gRPC.

@xiazuojie Do you have a proposal to fix this? Since Java does not have async/await like .Net, I wonder how the Java community solves this.

Async is natively supported by gRPC java. For HTTP/1.x it's much more complicated.
I'll PR for gRPC.

HTTP is a lower priority since we use GRPC by default in the SDK. So, a PR for gRPC looks good to me.

HTTP is a lower priority since we use GRPC by default in the SDK. So, a PR for gRPC looks good to me.

This example might help with the HTTP client we have today (okHttp): https://github.com/square/okhttp/blob/master/samples/guide/src/main/java/okhttp3/recipes/AsynchronousGet.java
It is now a matter of how it can be integrated into Reactor's mono.

This example might help with the HTTP client we have today (okHttp): https://github.com/square/okhttp/blob/master/samples/guide/src/main/java/okhttp3/recipes/AsynchronousGet.java
It is now a matter of how it can be integrated into Reactor's mono.

Thanks, @xiazuojie.
We only need the fix for HTTP now. GRPC is fixed.
On a side note, HTTP actually might become more relevant soon. As we are discussing if the invoke API should only be used over HTTP since gRPC to HTTP invocation cannot get the response to client easily translated due to core differences between the protocols.

Thanks, @xiazuojie.
We only need the fix for HTTP now. GRPC is fixed.
On a side note, HTTP actually might become more relevant soon. As we are discussing if the invoke API should only be used over HTTP since gRPC to HTTP invocation cannot get the response to client easily translated due to core differences between the protocols.


Update mapquest tile provide to match their updated TOS and URL paths

+1

feel free to take it on, use the mapbox or bing source as an example

There is an alternative to use mapbox sdk (map) or mapquest map sdk with osmdroid only using the gradle? Or, we need implement the service for that? And if we need implement it, how we can proceed?

@darkwizzard, no idea what you are asking for.
mapquest is still working at the moment...

MapQuest direct access to open tiles ends 11 July 2016 - info on switching to leaflet
MapQuest will end direct access to open tiles on 11 July 2016. Access to open tiles will require a key and use of the open plug-ins for Leaflet.  Details and documentation are here:
https://developer.mapquest.com/documentation/leaflet-plugins/open
You will also need an account (and a key).  Free accounts support up to 15,000 transactions per month.  Sign up here:
https://developer.mapquest.com/

@darkwizzard i understand what you were saying earlier. At this juncture, it's unclear whether or not it's possible for us to support mapquest anymore. Sounds a lot like they are discontinuing access to tiles via osm's url pattern. The Mapquest sdk is a whole another map engine (i think)

@spyhunter99 .. Can we open a pull request for adding several vector tiles like mapzen, mapbox, or new mapquest map? .. because the old tiles are almost deprecated. i assume that we can use mapsforge to render the maps. (#246).
I think that the mapquest sdk is forked from mapbox, but otherwise don't matter if we can support mapquest or no, the thing is support newest maps.
I consider it is most important.

Go right ahead, however mapsforge is also under a different license, so it can't be in osmdroid-android. a separate library would be better or perhaps in the forge adapter library

Any solution, any tiles source... or something to do to the map to works again?
I have my app map offline right now...

Effectively, MapQuest open tiles are not working anymore. Replaced by a message: "Direct tile access has been discontinued, bla bla bla".
Moving to vector tiles (#249) would be great, but certainly a huge work.
Until a solution is found, you can just change your app to use Mapnik tiles (osmdroid default provider).

Yeah!, I have been before testing the Tiles from TilesFactory, setting MapNick, it works fine, for the moment, its a good and fast solution.

Well, I just had a look at https://developer.mapquest.com/documentation/leaflet-plugins/open
It looks like MapQuest is now closely linked to MapBox: their URL scheme is exactly the MapBox URL scheme.
So if you register to MapQuest and get your AppKey, you can probably access it using the osmdroid MapBoxTileSource out of the box, setting the MapBoxMapId ("mapquest.streets-mb", or "mapquest.satellitenolabels") and accessToken (your AppKey) appropriately.

https://b.tiles.mapbox.com/v4/mapquest.streets-mb/{Z}/{X}/{Y}@2x.png?access_token={token}
appears to be the pattern to use. the @2x bit changes the scaling of the returned image. After trying to implement this and getting a token from mapquest (which looks nothing like the token i sniffed via the browser), I'm getting
IOException downloading MapTile: /1/0/1 : java.io.IOException: Received authentication challenge is null
There must be something else I'm missing here.

I got it!
Go to mapbox's site and get yourself an access token and use that for mapquest. Commit imminent with updated tile sources and examples


Fixes star not highlighted issue

Fixes #1298
Describe the changes you have made in this PR -
Selectively adds fa-star-o or fa-star based on is_star_for_project_and_user
Screenshots of the changes (If any) -
Note: Please check Allow edits from maintainers. if you would like us to assist in the PR.

Coverage remained the same at 84.279% when pulling ed58e59110a0f9bf016ac8e80c1ec2281c8bdfa8 on Nitish145:star-issue#1298 into 49d81f0573b7afdd1aea61281c3094df84cf9f23 on CircuitVerse:master.

@nitin10s @tachyons please check

@tachyons the id is called on nil (current_user) because it is not defined in tests probably.. How can i tackle this to resolve failing build ?

@tachyons please check !!

LGTM, @tachyons please review this

@tachyons

Can we avoid merging this one?. Already fixed it here >> https://github.com/CircuitVerse/CircuitVerse/pull/1495 (i am just reducing the merge conflicts for me :p)

@tachyons @nitin10s this can be closed >> fixed in new UI. Thanks for the effort @Nitish145


Parameters processing

add — @Parameter annotation. Values of field with this annotation will be added to report as parameters.
An example:
@Parameter("My Param")
private String myParameter;

@Test
public void suite2Test() throws Exception {
    myParameter = "papa";
    myParameter = "mapa";
    myParameter = "mama";
}

In report will looks like

Also provide system parameters for each testcase

Hi,
It seems like that parameter(s) is(are) skipped in the case if test(s) failed. For passed tests it's Ok, otherwise report has no parameters value.


Bug when validate the timestamp in webhooks

The header webhook-timestamp arrives in Unix format, not Unixmilli, but this validation is in Milliseconds, then I have an error in the sandbox when using the VerifySignature method.

Thank you! We'll get this patched up shortly.

Released as v0.1.1 – thank you for reporting @alex-banknovo!


How to change the DB.

Hello, DefectDoJo Team.
At first, I appreciate you build a good repository, and project.
I am trying to change the DB.
Actually, I tried to combine DefectDojo and Local mysql db.
But it leaded me to hell, and I did not find why it does not work.
So then I decied to use aws online db.
For now, I followed your doc - https://defectdojo.readthedocs.io/en/latest/running-in-production.html
https://prnt.sc/1044tm3
It seems to go well, but it show errors when I check the logs.
https://prnt.sc/1044v0l
Which value did not I change?
How can I fix this problem.
Regards!

I believe this is solved on Slack and was caused by special characters in the password that violate the URL spec causing the database url being parsed incorrectly.

Hello, @valentijnscholten
Thanks for your comment.
Yes, You and @madchap helped me, so I fixed this problem,
The reason is that my password contains some special characters.
.......
Btw, did you fix this problem?
So can I contain special characters in my database password?

No, it's not a problem in defect dojo. It's a property URLs, certain characaters are forbidden. Did you try urlencoding them?

No, I just created a new user(the password of the new user does not include any special char), then connected using this info.


Where to keep both platform(iOS and Android) licenses?

I have generated the license for the android app and kept it under my assets folder
project_root/assets/regula.license

and now I have generated a license for iOS. But both are having the same name regula.license.
So where to keep my iOS app license.
Note: Both apps using different bundle identifier and package names.

Hello,
You can have only one license file where both platforms are specified with the required app IDs.
Place it in the assets folder. Take a look at the following page: https://github.com/regulaforensics/DocumentReader-Flutter#how-to-build-demo-application.


PHP XML extension needed to work

I was having issues with running PHP mess detector on save because simplexml_load_string function was not found. In my particular case I had to install XML library with sudo apt install php7.2-xml -y and restart Apache to make it work. I think this should be present in the documentation.
Thanks!

This is indeed a PHPMD requirement. Added a requirements section to the readme (commit), with the next release of the extension this will be updated.


Data processing error with certain run protocols

When I run the "log reps separately" protocol, I'm getting this error during the data processing:
Index exceeds the number of array elements. Index must not exceed 83.
Error in get_trial_startStop (line 35)
trial_modes = modeID_order(trial_start_ind:2:trial_end_ind);
Error in process_data (line 172)
intertrial_durs, times] = get_trial_startStop(exp_order, trial_options, ...
Error in G4_conductor_controller/run (line 822)
eval(processing_command);
Error in G4_conductor_view/run_exp (line 633)
self.con.run();
Error in G4_conductor_view>@(varargin)self.run_exp(varargin{:}) (line 143)
'units', 'pixels', 'Position', [15, self.fig_size(4)- 305, 115, 85],'Callback', @self.run_exp);
This error didn't happen when we first added the protocol, so one of the updates to data processing must have introduced this bug.

Resolved with commit 4bea545bb1eea40b31826e1f626fbd6af4d5a2c0


[Step] a ordered sequence of steps in IE10 show in small font size.

http://semantic-ui.com/elements/step.html
In IE10

In Chrome

I can confirm this is fixed in IE10 with flexbox rewrite for steps in 2.0.
I really apologize about the delay in getting back about this.


spanTraceId is not propagated in messageHeaders

Hello
The spanTraceId and spanID are not retained when the message is flowing across multiple boot applications that are listening to kafka stream. I haven't used EnableAutoConfiguration, but I can see Sleuth working and creating the Ids during the runtime. Is there any flag or configuration I am missing?

I have a Global channel interceptor and I can see the Ids in ChannelInterceptor postSend - but as soon as the message comes to ChannelInterceptor preSend of other application, the messageHeaders - spanTraceId and spanId disappear. I checked Sleuth's TraceChannelInterceptor and dont see any code to remove these headers. What am I missing here? please let me know.

You have to use auto configuration to automatically register the channel interceptor. Spring cloud is built on top of spring boot. If you're disabling boots autoconfiguration mechanisms then almost nothing will work

Thank you, enabling autoconfiguration will affect other boot applications, can I manually include the Sleuth configuration?

Also, spring doc says  -  As long as Spring Cloud Sleuth is on the classpath any Spring Boot application will generate trace data. I see the trace data being generated without any configuration, its just not being propagated. I tried with "@Import({SleuthLogAutoConfiguration.class, SleuthAnnotationAutoConfiguration.class}) " - but headers are not propagated still.  My next step is try these -
@EnableAsync,  @IntegrationComponentScan

Yes it's written like this cause it assumes that you have a boot app with boot context.
As for the manual context setup you have to import all autoconfigurations and configurations manually. Please check the code to pick the proper ones. Definitely it's not the suggested way to go so I'll close the issue for now.


feat: adds laravel starts_with and ends_with validations

Adds some of the commonly validation types:

https://laravel.com/docs/9.x/validation#rule-starts-with
https://laravel.com/docs/9.x/validation#rule-ends-with

Submitting for https://hacktoberfest.com/participation/#pr-mr-details

@danieltakahashi Hi. Thanks for your contribution.
Looks good. Why did you close PR?

@danieltakahashi Hi. Thanks for your contribution.
Looks good. Why did you close PR?

Sorry, i'll reopen!


Header

Header is too large on mobile device.
Either make h1 font size responsive  or reduce size.

Used @media queries depending on viewport size to create responsive header size.
Under 400px, use smaller font. Now looks more appropriate on phone display while maintaining the style of the desktop page.


Use the repository instead of the homepage field in Cargo.toml

To allow Crates.io , lib.rs and the Rust Digger to link to it. See the manifest for the explanation.

Thanks