WIP: Enum new PUP-10944

https://tickets.puppetlabs.com/browse/PUP-10944

Can one of the admins verify this patch?

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

Hi @nod0n, thanks for your contribution! I read through the slack conversation, about wanting something like bool2str from stdlib. If I understand correctly, you want to take a boolean (or integer) as input and have it select among multiple boolean-like values (yes, no, etc), for example:
notice(convert(['no', 'yes'], true))

If so I'm not sure adding Enum.new will do that, but I may be misunderstanding. For example, I took your PR and added the following:
       end

       dispatch :from_args do
+        param          'Array', :values
         param          'Selector', :selector      # selects one of the Enum's strings
         optional_param 'Format',   :string_format # how should the string being formatted?
       end

-      def from_args(selector, format = :default)
+      def from_args(values, selector, format = :default)
         string = case selector
-          when true then @values[1]
-          when false then @values[0]
-          when Integer then @values[selector]
+          when true then values[1]
+          when false then values[0]
+          when Integer then values[selector]
           end

         StringConverter.singleton.convert(string, format)

However that fails, because Enum.new is supposed to return an instance of an Enum, not a String:
$ bx puppet apply -e 'notice(Enum.new(["no", "yes"], true))'
Error: Evaluation Error: Error while evaluating a Method call, Converted value from Enum.new() has wrong type, expects a match for Enum, got 'yes' (line: 1, column: 16) on node localhost

Based on your original comments in slack:

but is it also possible to set custom value for true , like with bool2str

makes me think you really do want to implement String.new(["no", "yes"], true)? Thoughts @hlindberg?

An ”instance of Enum” is actually a ruby string so that should work. There are never any instances of any other ”enum type” passed around. The check in new impl that of the return value’s type could be wrong for Enum - probably because Enum did not have a new before this so has gone untested for that case.
I looked briefly at String new, and as I recall it was difficult to make it support the proposed “pick string from array or enum based on value”. I could be wrong though.

henrik

1 sep. 2021 kl. 01:12 skrev Josh Cooper @.***>:

Hi @nod0n, thanks for your contribution! I read through the slack conversation, about wanting something like bool2str from stdlib. If I understand correctly, you want to take a boolean (or integer) as input and have it select among multiple boolean-like values (yes, no, etc), for example:
notice(convert(['no', 'yes'], true))
If so I'm not sure adding Enum.new will do that, but I may be misunderstanding. For example, I took your PR and added the following:
   end

   dispatch :from_args do

   param          'Array', :values
   param          'Selector', :selector      # selects one of the Enum's strings
   optional_param 'Format',   :string_format # how should the string being formatted?
 end

 def from_args(selector, format = :default)

 def from_args(values, selector, format = :default)
   string = case selector

     when true then @values[1]

     when false then @values[0]

     when Integer then @values[selector]

     when true then values[1]

     when false then values[0]

     when Integer then values[selector]
     end

   StringConverter.singleton.convert(string, format)

However that fails, because Enum.new is supposed to return an instance of an Enum, not a String:
$ bx puppet apply -e 'notice(Enum.new(["no", "yes"], true))'
Error: Evaluation Error: Error while evaluating a Method call, Converted value from Enum.new() has wrong type, expects a match for Enum, got 'yes' (line: 1, column: 16) on node localhost
Based on your original comments in slack:
but is it also possible to set custom value for true , like with bool2str
makes me think you really do want to implement String.new(["no", "yes"], true)? Thoughts @hlindberg?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications on the go with GitHub Mobile for iOS or Android.

An ”instance of Enum” is actually a ruby string so that should work

Ahh, ok I'll take a look


Splash Screen - Music Player app

Under music player app design

Splash screen

Could I work on this?

hey @Pavan49719 can plz tell me whether you got any error while running music_player app

For me it's running on chrome as a web app, but not on android.

hey @Pavan49719 can plz tell me whether you got any error while running music_player app

@msramesh2k1 Are you getting the same error

Yes , it is due to missing of Android manifest file . @naveeramesh will do by tomorrow

Yes , it is due to missing of Android manifest file . @naveeramesh will do by tomorrow

Yeah got it, Thanks

@Pavan49719 rectified

@Pavan49719 clone again now and start work


$ecAdapter NULL defaults

BC break for EcSerializer::getSerializer

Ah I see, it looks better now!


Multiple code improvements - squid:S1213, squid:S1192, squid:ClassVariableVisibilityCheck, squid:S1640, squid:S2386, squid:S1151

This pull request is focused on resolving occurrences of Sonar rules
squid:S1213 - The members of an interface declaration or class should appear in a pre-defined order.
squid:S1192 - String literals should not be duplicated.
squid:ClassVariableVisibilityCheck - Class variable fields should not have public accessibility.
squid:S1640 - Maps with keys that are enum values should be replaced with EnumMap.
squid:S2386 - Mutable fields should not be "public static".
squid:S1151 - "switch case" clauses should not have too many lines.
You can find more information about the issue here:
https://dev.eclipse.org/sonar/rules/show/squid:S1213
https://dev.eclipse.org/sonar/rules/show/squid:S1192
https://dev.eclipse.org/sonar/rules/show/squid:ClassVariableVisibilityCheck
https://dev.eclipse.org/sonar/rules/show/squid:S1640
https://dev.eclipse.org/sonar/rules/show/squid:S2386
https://dev.eclipse.org/sonar/rules/show/squid:S1151
Please let me know if you have any questions.
George Kankava

Coverage increased (+0.5%) to 36.932% when pulling 705e14f9eb2215ef20f263eb5710c6f28bd4e37c on DevFactory:release/multiple-code-improvements-fix-1 into 4ac8872cb5c4668b993de1aa4fa2a07a0b8e2006 on oldratlee:master.

Thanks very much for your professional contribution.
Merged!

Thank you.


Change kafka to pykafka

kafka is already taken by python-kafka so no need to step on their namespace.

By this do you mean changing pykafka/kafka to pykafka/pykafka? If so, I'll just grab it.

Yes, pretty much, @emmett9001. We need the actual root Python package/module name to be pykafka.


[bug] can't install sauron

$ raco pkg install --auto sauron
Resolving "sauron" via https://download.racket-lang.org/releases/8.1/catalog/
Resolving "sauron" via https://pkgs.racket-lang.org
Downloading repository https://github.com/racket-tw/sauron.git#develop
git: could not find requested reference
  reference: master
  repo: racket-tw/sauron.git
  context...:
   /usr/racket/collects/net/git-checkout.rkt:403:0: select-commits
   [repeats 1 more time]
   /usr/racket/collects/net/git-checkout.rkt:73:8
   /usr/racket/collects/net/git-checkout.rkt:54:2: retry-loop
   /usr/racket/collects/pkg/private/download.rkt:102:2: download!
   /usr/racket/collects/file/cache.rkt:63:2: fetch-and-continue
   /usr/racket/collects/racket/contract/private/arrow-val-first.rkt:555:3
   /usr/racket/collects/pkg/private/download.rkt:94:0: download-repo!
   /usr/racket/collects/pkg/private/stage.rkt:318:11
   /usr/racket/collects/pkg/private/stage.rkt:114:0: stage-package/info
   [repeats 1 more time]
   /usr/racket/collects/pkg/private/install.rkt:141:0: install-packages
   /usr/racket/collects/pkg/private/install.rkt:925:4
   /usr/racket/collects/racket/contract/private/arrow-val-first.rkt:555:3
   /usr/racket/collects/racket/file.rkt:437:8
   /usr/racket/collects/racket/file.rkt:426:0: call-with-file-lock
   ...

Huh. I just installed the Racket v8.3 and it works. Strange.

Yes, it's weird that your raco trying to fetch master branch but sauron use develop branch. Of course the download failed


MPSDK-989: fixed issues with refunds and unnecessary property

Fixes this and this

Hi,
Is it really the best way to do it ?
This introduces some complexity as it forces us to know in advance what kind of payin it was before being able to do the refund.
This should not be necessary as the refund for normal payin and the refund for recurring payin has the same endpoint/parameters.
Before:
refund = PayInRefund(author=author, payin=payin)

Now:
if isinstance(payin, RecurringPayIn):
    refund = RecurringPayInRefund(author=author, payin=payin)
else:
    refund = PayInRefund(author=author, payin=payin)

But most importantly, this is not in line with your api documentation as there is nothing like a RecurringPayInRefund
I probably am missing something but why was it not possible to make RecurringPayIn inherits from the PayIn object in the first place ?

Hi,
I'm not sure to understand why there was a modification on RecurringPayInRegistration -> RecurringPayIn and why this class now inherits from PayIn.
A RecurringPayInRegistration is not a PayIn


Error: undefined method `head?' for nil:NilClass

Error: undefined method `head?' for nil:NilClass
/usr/local/Homebrew/Library/Homebrew/software_spec.rb:55:in `block in owner='
/usr/local/Homebrew/Library/Homebrew/software_spec.rb:53:in `each_value'
/usr/local/Homebrew/Library/Homebrew/software_spec.rb:53:in `owner='
/usr/local/Homebrew/Library/Homebrew/formula.rb:231:in `spec_eval'
/usr/local/Homebrew/Library/Homebrew/formula.rb:187:in `initialize'
/usr/local/Homebrew/Library/Homebrew/formulary.rb:88:in `new'
/usr/local/Homebrew/Library/Homebrew/formulary.rb:88:in `get_formula'
/usr/local/Homebrew/Library/Homebrew/formulary.rb:224:in `get_formula'
/usr/local/Homebrew/Library/Homebrew/formulary.rb:275:in `factory'
/usr/local/Homebrew/Library/Homebrew/formulary.rb:306:in `from_keg'
/usr/local/Homebrew/Library/Homebrew/formulary.rb:289:in `from_rack'
/usr/local/Homebrew/Library/Homebrew/formula.rb:1383:in `block in installed'
/usr/local/Homebrew/Library/Homebrew/formula.rb:1381:in `map'
/usr/local/Homebrew/Library/Homebrew/formula.rb:1381:in `installed'
/usr/local/Homebrew/Library/Homebrew/diagnostic.rb:855:in `check_missing_deps'
/usr/local/Homebrew/Library/Homebrew/cmd/doctor.rb:43:in `block in doctor'
/usr/local/Homebrew/Library/Homebrew/cmd/doctor.rb:35:in `each'
/usr/local/Homebrew/Library/Homebrew/cmd/doctor.rb:35:in `doctor'
/usr/local/Homebrew/Library/Homebrew/brew.rb:95:in `<main>'

How to fix the bug?

git -C "$(brew --repo)" fetch --tags
brew update --force

From the issue template:

Please note we will close your issue without comment if you delete, do not read or do not fill out the issue checklist below and provide ALL the requested information. If you do not read fill out the issue template repeatedly you will be blocked from every submitting issues to Homebrew again.

If you add the necessary information this issue may be reopened.

Thanks https://github.com/Homebrew/brew/issues/2944, I haved fixed the bug by
$ cd /usr/local/Homebrew
$ git pull origin master


[Tutorial 3] Suggestion: link to scikit-learn about cross-validation

https://brainiak.org/notebooks/tutorials/html/03-classification.html#2.-Classification would improve just by linking to https://scikit-learn.org/stable/modules/cross_validation.html

Resolved with PR# #25


Handle multi-line summaries in FinalPeriodFormatter

Closes #26.
SummaryFormatter makes this a lot easier. I did a quick test against pylint and didn't find any immediate regressions.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

8 of 8 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 100.0%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
405

Relevant Lines:
405

💛  - Coveralls

@Pierre-Sassoulas lots of clean up to do, but look what I hacked together 😄

Damn that github primer action is SO good. Definitely thinking about what can be done with pylint's primers...


Make America (the website) Great Again (mobile friendly)

I have an iPhone 6, this is how the website appears.

I don't understand whats happening here or how to fix it. It looks fine at the smallest size of Chrome on my computer, and on Vaughns phone, but this is below both of those sizes.

Might be a Safari thing. What browser did you use?


Document workaround for Windows Server 2012 install troubles?

After installing opencv-contrib-python on Windows server 2012, I had the famous error evocated in "Q: Import fails on Windows: ImportError: DLL load failed: The specified module could not be found.?"
However, trying to install "Windows Server Essentials Media Pack" required the "Windows Server Essentials Experience" role, and installing this role via Server Manager changed a lot the config of the machine (installing active directory management for local accounts etc.).
It turned out I only needed to install the "Media Foundation" feature in the Server Manager, which didn't touch the rest of the server config.
I didn't find info about this on the Web, maybe it's worth adding this specific workaround to the FAQ ?

Could you create a pull request for this? I could write an entry to the FAQ but it's better if it's done by someone who has first hand experience about the issue.

Indeed, here you have: https://github.com/skvark/opencv-python/pull/264


Possible Incompatibility

Using this Trainer, CoreMod & ZEreshkigal AllinOneMod seems to cause a problem where the sound bugs away and if being shot it will cause a black screen that most of the time freezes the game. Could this be checked? These mods are needed to change some stuff in tarkov to make more like the old version.
Player.log
Edit: After testing it seems that any mod that changes weight values into a negative number causes these problems with this trainer.

No, see the following:
https://github.com/sailro/EscapeFromTarkov-Trainer/blob/master/Extensions/ItemExtensions.cs#L26
I'm not using weight anymore.


Any chance of adding flow type support?

right now it is not possible to discover methods and types without digging in sources,
it would be nice to have IDE hints, autocomplete, and flow check

@veonua
I'm thinking of adding typescript support.
not sure about how I can add support for flow.

TS would be great, thank you
vue supports flow in https://github.com/vuejs/vue/tree/dev/flow

@next #506


HWKAGENT-79  metric tags

right now this only supports defining tags per managed server. So for each remote-dmr, remote-jmx, etc, you can define a set of tags for each metric collected under that managed server. You can add tokens to the labels (like %MetricTypeUnits or %ResourceName).
This does not allow you to define tags for specific metric types. I'm thinking about how it would be possible to support that.

note that this is based on the branch from the PR https://github.com/hawkular/hawkular-agent/pull/226
once that is merged into master, we can rebase this PR branch on master


Definition/usage of message priority is ambiguous

Based on the definition of mapping common attributes to CloudEvents, my understanding is that request messages MUST contain a priority of at least CS4.
It is unclear, though, if response messages also need to contain a priority (of the same priority). This would make sense to me, because if I am interested in getting a response quickly (indicated by CS4 on the request), it seems reasonable to also require the response to be delivered high-prio, or am I mistaken?
Also, the default priority to assume when no priority is specified is defined inconsistently across the spec:

The source mentioned above defines the default to be CS0

The QoS specification defines the default value to be CS1, which also seems to be in line with the wording used in the UAttributes proto where CS1 is described as

Standard, undifferentiated application such as General (unclassified)

FMPOV we need to adapt the CloudEvent attributes mapping section accordingly.

@stevenhartley WDYT?

@sophokles73 Agree. Will you create a PR to fix this? Then we'll need to create PRs on the various language specs as well to ensure we choose CS1 as default and ensure CS4 for request and response (and they match).

@stevenhartley I was wondering if it is still appropriate to define the general requirements regarding message attributes in the CloudEvents mapping spec. Most of the requirements stated in that document are actually independent from the way that a UMessage is being mapped to a transport.
We should probably move these requirements to the UAttributes spec or even the corresponding proto files? WDYT?

We should probably move these requirements to the UAttributes spec or even the corresponding proto files? WDYT?

Agree. I was getting this feeling when I was reviewing the up-core-api change a week or so ago for priority to a uint32 and noticed that descriptions on how priority was handled and their defaults was not in some "general purpose" location.

We should probably move these requirements to the UAttributes spec or even the corresponding proto files? WDYT?

@sophokles73 agree. Lets document this in up-core-api uattribute.proto and ensure the client libraries implement this.

I have tried to do that in https://github.com/eclipse-uprotocol/up-core-api/pull/112.
However, now that I am trying to remove the corresponding information from the CloudEvents spec, I realize that the proto files are not a good place to define these general rules because there is only very limited support for documenting things, i.e. using C-type comments. Structuring the information is very difficult in proto and there is also no way of linking to certain message definitions from up-spec.
IMHO we should therefore better put the information in the textual documentation files in up-spec and use the proto files only as technical manifestation of the written spec.
Would that work for you @stevenhartley ?

@PLeVasseur WDYT?

I was also getting bummed out as I read more about Protobuf that we cannot put stronger constraints, but seems that's just how it goes.

IMHO we should therefore better put the information in the textual documentation files in up-spec and use the proto files only as technical manifestation of the written spec.

To me, this makes sense. Would we then put above each field / message in up-core-api a link back to the relevant docs in up-spec to avoid docs drifting from the .protos?

@stevenhartley WDYT? Would you be okay with moving the info from the proto file(s) to properly formatted text documents in up-spec, e.g. uattributes.adoc?


Task - browse nomenclature - classify lines according to origin

Browse nomenclature is a very complete look at the data, but it sometimes appears there are redundant lines.  These are in fact lines where incomplete data are provided.

Add displayable classifications (protonym, relationship, classification, combination) that can be used to highlight respective rows, giving them more context
Emphasize what is cited versus what is name metadata, especially important for author names and where they originated

Origin is done, other issues need more thought.


Add support for configuring paths via loaderOptions

Currently we use LESS in a way that all @import statements paths should be treated as if the URL traverses from the root directory of our CSS codebase. We use paths configuration for this to make it happen and prevent traversing back to the parent directories. In order to move this across and use plugin-less I exported paths to loaderOptions for extra configuration.
Just wondering if this is suitable upstream. Thanks in advance!

Can you share a slightly more detailed example of how this affects how you write your less here? Does it mean you are using @import "/root/x.less" to mean relative to the baseURL inside a LESS file?

It's more like an alternative path to check for the import files. If I specify @import "foo.less" with the paths configuration ['/project/imports/'] and the file importing it is /project/css/baz.less then it will search /project/css/foo.less and /project/imports/foo.less.
If I'm not mistaken, the usage can be similar to paths to load libraries from a CDN.

Unfortunately I don't think this is suitable for merge, because it involves resolving two separate paths locations, which is something we always try to avoid with in-browser loading. If we only do it for the server-side case then we're creating a difference between the browser and server loader which is against the principle of this project.
So, rather than pushing this idiom too far, it may be worth running a separate build process that can handle paths I think. Feel free to work on a fork though, and sorry to be a pain.

Yeah that's fair. I think we've also realised that we can't use plugin-less outright since we still need more tweaks with the build with Autoprefixer so we're going to need to fork anyway. Thanks for the clarification though.


Containers running in Rancher only see 1 CPU core (instead of all of them)

Rancher versions:
rancher/server or rancher/rancher: 1.6.21
rancher/agent or rancher/rancher-agent:
Infrastructure Stack versions:
healthcheck: rancher/healthcheck:v0.3.8
ipsec: rancher/net:v0.13.17
network-services: rancher/metadata:v0.10.4 and rancher/network-manager:v0.7.22
scheduler: rancher/scheduler:v0.8.5
kubernetes (if applicable):
Docker version: (docker version,docker info preferred) 18.06.1-ce
Operating system and kernel: (cat /etc/os-release, uname -r preferred) Ubuntu 18.04LTS (Ubuntu 16.04LTS affected too)
Type/provider of hosts: (VirtualBox/Bare-metal/AWS/GCE/DO) Bare-metal
Setup details: (single node rancher vs. HA rancher, internal DB vs. external DB) single node
Environment Template: (Cattle/Kubernetes/Swarm/Mesos) Cattle
Steps to Reproduce:

Run a container with openjdk:11 image via a Rancher service,
log into shell and run:

cd /docker-java-home
root@6499aeaf786e:/docker-java-home# echo 'Runtime.getRuntime().availableProcessors()' | bin/jshell -q
jshell> Runtime.getRuntime().availableProcessors()
$1 ==> 1
jshell> root@6499aeaf786e:/docker-java-home#

It only detects a single CPU core (although the machine has 6 cores / 12 threads).
When running the same container on the same machine via command-line:
docker run -it openjdk:11 /bin/bash
root@2cb0cf9c57f5:/# echo 'Runtime.getRuntime().availableProcessors()' | bin/jshell -q
Sep 14, 2018 8:34:30 AM java.util.prefs.FileSystemPreferences$1 run
INFO: Created user preferences directory.
jshell> Runtime.getRuntime().availableProcessors()
$1 ==> 12

Results:
When running a container within Rancher, the number of CPUs assigned to the container is wrongly detected. I just hope this is a detection problem (and not really limiting the CPU to a single core).

I think this is pretty critical since it screws any containerized java application that depends on the processor count running on Rancher v1.6.x.

So does applying cpuShares: 1024 to services solves the issue ?

yes, this is one of the options. you can put cpu_shares: 1024 into docker compose to let jvm to fallback to default behaviour of full processors/cores utilization. In case you want to explicitly set quotas, you can go with reservations parameter in rancher-compose

I don't know where the 2 is coming from (UI, API defaults, backend or agent on the host) or why we're (apparently) sending any value at all by default.
But the behavior in that code does not seem to match Docker at all.  Cpu-shares is a relative number which only has meaning when compared to the sum of the rest of the containers on that host (i.e. If a container with two shares is the only thing running, that's all the shares).  And it doesn't limit how many physical cores are available to the container regardless (that's cpuset).  And there is nothing special about 1024, other than it happening to be the default; it doesn't mean shares are not in use.

In fact reservations in rancher 1.6 affect shares that jvm find in cgroup files. When I set them to 4000 ( milli_cpu_reservation: 4000), jvm finds 4096 and produce 4 cores to be used:
# execute shell from rancher console
# cat /sys/fs/cgroup/cpu,cpuacct/cpu.shares
4096

Jvm logs
1/30/2019 7:58:34 PMCPU Shares is: 4096
1/30/2019 7:58:34 PMCPU Share count based on shares: 4

the same issue in rancher v2.1.5
docker inspect result as follow:
"Isolation": "",
"CpuShares": 2,
"Memory": 0,
"NanoCpus": 0,
"CgroupParent": "/kubepods/besteffort/podc7c25f30-5047-11e9-be14-0609ce0001b8",
"BlkioWeight": 0,
"BlkioWeightDevice": null,
"BlkioDeviceReadBps": null,
"BlkioDeviceWriteBps": null,
"BlkioDeviceReadIOps": null,
"BlkioDeviceWriteIOps": null,
"CpuPeriod": 0,
"CpuQuota": 0,
"CpuRealtimePeriod": 0,
"CpuRealtimeRuntime": 0,
"CpusetCpus": "",
"CpusetMems": "",
"Devices": [],
"DiskQuota": 0,
"KernelMemory": 0,
"MemoryReservation": 0,
"MemorySwap": 0,
"MemorySwappiness": -1,
"OomKillDisable": false,
"PidsLimit": 0,
"Ulimits": null,
"CpuCount": 0,
"CpuPercent": 0,
"IOMaximumIOps": 0,
"IOMaximumBandwidth": 0
with docker image: openjdk:8u181-jdk-alpine , availableProcessors is 1
with docker image: openjdk:8u181-jdk , availableProcessors is 8 (expected)

@4admin2root Rancher v2.x is completely different from v1.6.x. Please file a different bug for 2.x.
With the release of Rancher 2.0, development on v1.6 is very limited.

The cores are there.  What Java chooses to do math on is up to them, shares are an entirely relative number that is meaningless in its own without knowing the total.


[FLINK-5518] [input/output formats] Add null value check.

Thanks for contributing to Apache Flink. Before you open your pull request, please take the following check list into consideration.
If your changes take all of the items into account, feel free to open your pull request. For more information and/or questions please refer to the How To Contribute guide.
In addition to going through the list, please provide a meaningful description of your changes.

[x] General

The pull request references the related JIRA issue ("[FLINK-XXX] Jira title text")
The pull request addresses only one issue
Each commit in the PR has a meaningful commit message (including the JIRA id)

[x] Documentation

Documentation has been added for new functionality
Old documentation affected by the pull request has been updated
JavaDoc for public methods has been added

[x] Tests & Build

Functionality added by the pull request is covered by tests
mvn clean verify has been executed successfully locally or a Travis build has passed

Thanks for the PR @jakubhavlik.
The fix looks good. Can you add a testCloseWithoutOpen() method to org.apache.flink.api.java.hadoop.mapred.HadoopInputFormatTest and org.apache.flink.api.java.hadoop.mapreduce.HadoopInputFormatTest to guard this fix?
Occasionally builds fail due to timeouts. That's nothing to worry about. I'll run the tests again before merging.
Thank you.

Tests added and build passed: https://travis-ci.org/jakubhavlik/flink/builds/192653463 .

Thanks for the quick update @jakubhavlik.
+1 to merge.

Merging


Offers in voucher is no more an array

t is a breaking changes.
This will be deployed later in August.


Large unnecessary file in python distribution

There is a large (42M) unnecessary file in the python distribution of RDKIT that should be remove:
FilterSet_NIBR2019_wPubChemExamples.html
Which is found in this directory:
rdkit/Contrib/NIBRSubstructureFilters
This generated of examlpes file accounts for 35% of the total rdkit distribution size (currently 120 MB).  This file name does not appear in the rdkit repository, so I do not know to fix the problem. I wonder if there is a stale file in the directory from which distributions are being created and pushed.

In the same directory, there are two additional files that likely need to be removed:
SubstructureFilter_HitTriaging_wPubChemExamples.csv
filterExamples.png
examples/chembl24_structs_randomtestSample_100.csv
examples/chembl24_structs_randomtestSample_100_out.csv
These are far smaller files, but none of them are mentioned in the github repo, so this just seems to be a dirty release.

Hi.
Thanks for pointing this out. I am taking care of the Python wheels of RDKit.
Only the last release of the Python wheels contains the entire Contrib folder. I was initially a bit hesitant to include the entire Contrib folder because some files might not be necessary and this definitely blows up the size of the wheels (as you pointed out). However, I am not sure which files are actually required by RDKit. In the next build, I can selectively include only necessary files to slim down the size of the package.
@greglandrum Can you help in selecting these files/folders from the Contrib folder?
Chris

I don't think those files are in the repo, are they?
Do they appear in a clean clone of the project? Perhaps run "git stash" before building the packages?
This particular 40mb files is (in my opinion) a big enough deal to put out a new package ASAP into pypi, outside the normal release cycle.

The other way to do this is by setting up continuous integration to automatically build the wheel on a remote server. I recently did this with circleci (https://circleci.com/) on another project (https://github.com/swamidasslab/xenopict). It has certainly made development far far far easier.

One final pieces of information. Here are the largest directories in the rdkit pypi distribution:
55M	Contrib
41M	Contrib/NIBRSubstructureFilters
26M	Chem
5.2M	Contrib/CalcLigRMSD
3.7M	Contrib/SA_Score
3.1M	Contrib/CalcLigRMSD/figures
2.4M	Data
2.0M	Contrib/NP_Score
2.0M	Contrib/CalcLigRMSD/data
1.6M	rdBase.so
1.6M	DataStructs
1.6M	Chem/Draw
Notice that /Contribs is large, but ONLY because of that 40mb file!  Remove that single file, and the folder drops down to just 15mb. A similar problem (not as big) is found in 	Contrib/CalcLigRMSD. Remove these files, and the the folder drops to about 10mb.
So I do not think selecting different folders to include or not is the problem here. Rather, there are two contribs that have large extraneous files in them.

These files are not accidentally in the RDKit source tree, nor are they mistakes: they are part of the documentation/tests for the corresponding contrib modules.
As such, they should not be removed from the RDKit repo. I do agree that they don't necessarily need to be part of things like the conda distributions.

Hi.
Thanks for pointing this out. I am taking care of the Python wheels of RDKit.
Only the last release of the Python wheels contains the entire Contrib folder. I was initially a bit hesitant to include the entire Contrib folder because some files might not be necessary and this definitely blows up the size of the wheels (as you pointed out). However, I am not sure which files are actually required by RDKit. In the next build, I can selectively include only necessary files to slim down the size of the package.
@greglandrum Can you help in selecting these files/folders from the Contrib folder?

Hi @kuelumbus. Sure thing. From the larger directories mentioned above:

Contrib/NIBRSubstructureFilters: you don't need the examples directory, the html file, or the png file
Contrib/CalcLigRMSD: you don't need the data or figures directories or the ipynb
Contrib/SA_Score and Contrib/NP_Score: the large files there are the models, so they should not be cleaned up.

Thanks, Greg. I will remove these files in the next build.

This issue can be closed (I can't do this myself).

Just a though @kuelumbus  - maybe we should have a separate rdkit-contrib package. I imagine only a fraction of people would use the Contrib.

Just a though @kuelumbus - maybe we should have a separate rdkit-contrib package. I imagine only a fraction of people would use the Contrib.

This could be an option. You would get RDKit without contrib pip install rdkit and with contrib pip install rdkit[rdkit-contrib]. But after removing the large files (as Greg suggested), including Contrib only slightly increases the size of the unpacked package by ~9 Mb.

I see this was fixed in the latest pypi release. Thanks!


Support Webpack 5

This PR contains a:

[ ] bugfix
[x] new feature
[x] code refactor
[x] test update
[ ] typo fix
[ ] metadata update

Motivation / Use-Case
support webpack 5

Breaking Changes
when it upgrade, it looks like just support webpack@5

Additional Info
i do not know how to rewrite the test case...i am sorry

#1 is already open for this. What does your PR do differently?

i am sorry to make a pr for same thing. i got some errors after i clone ianwalter@next，and my project has already upgrade webpack5, so i have to try to solve these errors.
0. git clone https://github.com/ianwalter/webpack-hot-client.git

cd webpack-hot-client && git checkout next && npm install && npm run build:client && npm link
cd my-project && npm link webpack-hot-client && npm run serve
after doing this，i get first error:
TypeError: The 'compilation' argument must be an instance of Compilation  at Function.getCompilationHooks (/Users/fuzhao/Desktop/webpack-hot-client/node_modules/webpack/lib/NormalModule.js:162:10)  at /Users/fuzhao/Desktop/webpack-hot-client/node_modules/webpack/lib/HotModuleReplacementPlugin.js:534:18
it looks like we can not apply an instance of  HotModuleReplacementPlugin to compiler anymore, so i remove the code about hotPlugin at compiler.js, and add an instance HotModuleReplacementPlugin to my webpack.config
rerun my project, webpack runs well, i visit  my website page, i get second error:
Uncaught TypeError: Cannot read property 'call' of undefined  at __webpack_require__ (app.js:1084)  at eval (index.js:5)  at Object../index.js (loglevelnext.js?7c53:103)  at __nested_webpack_require_566__ (loglevelnext.js?7c53:30)  at eval (loglevelnext.js?7c53:78)  at eval (loglevelnext.js?7c53:81)  at webpackUniversalModuleDefinition (loglevelnext.js?7c53:3)  at eval (loglevelnext.js?7c53:10)  at Object.../../Desktop/webpack-hot-client/node_modules/loglevelnext/dist/loglevelnext.js (app.js:18)  at __webpack_require__ (app.js:1084)
i am sorry i do not really know why it occurs, i try to upgrade loglevelnext to latest, it works(magic).
cd webpack-hot-client && npm run build:client
rerun my project
after doing this, i got third error:
Uncaught TypeError: Failed to construct 'URL': Invalid URL  at connect (socket.js?cf75:10)  at hotClientEntry (index.js?236b:53)  at eval (index.js?236b:4)  at Object.../../Desktop/webpack-hot-client/client/index.js?client (app.js:696)  at __webpack_require__ (app.js:1114)  at checkDeferredModulesImpl (app.js:2211)  at Function.__webpack_require__.x (app.js:2229)  at app.js:2271  at app.js:2272
i notice that webpack5 remove Automatic Node.js Polyfills, so ianwalter remove require('url') at client/socket.js, but he changes url.format to new URL, so i got this error...
In order to solve this, i change it to string Literal
cd webpack-hot-client && npm run build:client
rerun my project, it works well.


State of the monitor stays as not monitored

Hi,
Thank you for the great MP it will save a lot of trouble!
I've configured it and the test was successful however whenever I go to check the Group state or Just State in the Query Monitor folder it's in a state : Not monitored:

Hi, @sakrayaami  sorry for a late response, please make a sure that the agent proxy is enabled.

Hi,
Agent proxy is enabled on the particular agent.

Please verify that the query always return a numerical data. If you are not sure, send me the query I will try to help you.

Hi,
The query gives always and only numerical data. Also the result is always in one line one column and it is between the numbers 10 and 50

And just as a further clarification this is the query we use. I've change a bit of it for privacy purposes but in general whenever I run it in the test section it always outputs numeric value and the test is successful .
``declare @start datetime, @end datetime
set @end = getdate()
set @start = DATEADD(minute,-10,@end)
select
COUNT(distinct CallId) as Value
from DBname..ODR where start between @start and @end
and Result in ('e')

<IP_ADDRESS>

@sakrayaami, basically the module flow is running a query and then mapping a performance data, So, if query module return an empty data so the performance data mapping module will throw this unable to convert error.. therefore I think the problem is in the query module, so, since we know that the query is valid. maybe there is a permission issue. Please verify that that specific health service agent has the permission to execute this query

Not so long ago we have implemented the following approach for monitoring the SQL servers:
https://blogs.technet.microsoft.com/kevinholman/2016/08/25/sql-mp-run-as-accounts-no-longer-required-2/
Maybe this is causing the issues, may I ask for you opinion?

Sorry, I don't know.. you can check it out by giving the SCOM action account a permission to this database

Hi again,
Our SCOM action account has a sysadmin server role on the DB (sysadmin permissions).
It is not mapped specifically to any DB however since it is a sysadmin on the SQL server it has permissions to do and go everywhere on the DB.
Any ideas?

Try some a simple query like SELECT 2
just to eliminate an MP module bug.

@sakrayaami hi,
I solved a similar problem by changing the Query type from string to richtext it means you can write more than 256 characters query.
Please download and import this Managment Pack MP v<IP_ADDRESS>.

Thank you for keep up this moving!
I've tried to update the MP and got this error:
QueryOleDbMonitorLibrary could not be imported.
If any management packs in the Import list are dependent on this management pack, the installation of the dependent management packs will fail.
Verification failed with 2 errors:
Error 1:
Found error in 2|QueryOleDbMonitorLibrary/c7d1f91346117fc6|<IP_ADDRESS>|QueryOleDbMonitorLibrary|| with message:
Version <IP_ADDRESS> of the management pack is not upgrade compatible with older version <IP_ADDRESS>. Compatibility check failed with 1 errors:

Error 2:
Found error in 1|QueryOleDbMonitorLibrary/c7d1f91346117fc6|<IP_ADDRESS>|OleDBQueryMonitoring|| with message:
The property Type (Query) has a value that is not upgrade compatible. OldValue=string, NewValue=richtext.
I will try to remove the old and install the updated.

If you don't want to recreate previews queries, please follow these steps:

Export all current MPs that include all the queries.
Delete exists MPs includeQueryOleDbMonitorLibrary.mp, and QueryOleDbMonitorTemplate.mpb.
Import fixed QueryOleDbMonitorLibrary.mp, and QueryOleDbMonitorTemplate.mpb
Open those MPs you exported in step 1 in notepad and change the version of QueryOleDbMonitorLibrary.mp, and
QueryOleDbMonitorTemplate.mpb in a reference section.
Import those MPs.

If you don't want to do all the changes you can follow the workaround, just rewrite the query as a stored procedure and execute it instead of the original query.

Hi,
The very same error/issue is ongoing using a stored procedure.
I've created a stored procedure with select 2 sql query, tested it in the configuration, it gave correct values however the very same situation is happening.
I am about to test it with SCOM 2016 now.

Okay, I have another suggestion, try to trace the query using the SQL profiler, maybe you could figure out what is going on with the query

Fixed https://www.savision.com/free-management-packs/


fix: handle extension-less files

When importing an extension-less file (eg. tsc), esbuild throws an error because it can't detect which loader to use.

:tada: This PR is included in version 1.1.2 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Add validating XML responses

Hi, i use this library for validate my requests and responses in tests.
I have some RSS API endpoints and openapi spec for this APIs
And, i try validate XLM responses and get error -
 [] Value expected to be 'object', 'string' given.
In https://github.com/thephpleague/openapi-psr7-validator/blob/master/src/PSR7/Validators/BodyValidator/UnipartValidator.php#L46 parsing only json responses, and XML responses interpreted as string

Hello, do you have correct content-type headers set on your response body?

Hello, do you have correct content-type headers set on your response body?

yes, application/rss+xml

Yea, I dig some history, xml is not supported really now, this requires a bit of refactoring
https://github.com/lezhnev74/openapi-psr7-validator/pull/45/files#r304973636


EML 2.2.0 testing

This will be a parent task for testing @gbif/dataproducts

https://github.com/gbif/eml-profile/issues/5

@gbif/dataproducts  Let's decide about introduction and gettingStarted inputs - should we move them to a separated page (Additional description, what would be the best name?) after the temporal coverage, as Marie suggested? Alternatively, we can move them to Additional Metadata or leave as they are.

@mike-podolskiy90 will you set up an IPT instance so we can check the new layout? And would you prefer we just comment in this master issue or want us to link issues to this parent issue?

I'll try to deploy the updates to the UAT env and see how it works there. Otherwise, a local IPT installation needed

@CecSve I'd suggest creating new issues and link them to this one. Similar to https://github.com/gbif/ipt/issues/1975

Let me know when you start testing please. Others are testing on dev, so there might be a wrong war deployed to dev.

Let me know when you start testing please. Others are testing on dev, so there might be a wrong war deployed to dev.

I will begin testing today.


update rollbar snippet

@coryvirok is there anything else that needs to be updated here? The change is v1.9 to v2.2.0

can this be updated to the latest version 2.2.8 I'm really waiting for this

Codecov Report

Merging #17 into master will decrease coverage by 20%.
The diff coverage is 100%.

@@           Coverage Diff            @@
##           master      #17    +/-   ##
========================================
- Coverage   97.14%   77.14%   -20%
========================================
  Files           1        1
  Lines          35       35
========================================
- Hits           34       27     -7
- Misses          1        8     +7

Impacted Files
Coverage Δ

lib/index.js
77.14% <100%> (-20%)
:arrow_down:

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 7eceed6...49819be. Read the comment docs.

Who’s merging this?

Hey @hankim813 I noticed you released the last version so I thought I'd reach out. https://circleci.com/gh/segment-integrations/analytics.js-integration-rollbar/332 Looks like a Slack/Circle issue - any thoughts?

hi @and-megan sorry for the late reply. Are there any breaking changes from v1 to v2? Want to make sure we dont need to update any other code in this integration.
With that said, can you link us to the changelog from v1 to v2 for our own documentation purposes?

Hey @hankim813 thanks for checking in! Here's the Changelog https://github.com/rollbar/rollbar.js/blob/master/CHANGELOG.md
Scope is the only breaking change, but there is a bit of difference in how some details of capture uncaught exceptions work and probably larger than just rollbar-browser doesn’t exist anymore.

Hi everyone - we're looking into this now and should have a fix shipped tomorrow.

Hi everyone - quick update here. It took a bit longer to get the new sdk version working. We have a pull request ready but are going to deploy tomorrow morning instead. Apologies for the delay and thanks for your patience.
Here is the PR: https://github.com/segment-integrations/analytics.js-integration-rollbar/pull/18
Thanks @and-megan and @idostern for your help! Will close this out.


visual genome dataset

While this repo supports MSCOCO and Flickr30k, if we were to replace all the data files (cocobu_att, cocobu_fc, cocotalk.json, cocotalk_label.h5, captions_val2014.json) with the equivalent for the Visual Genome dataset, would the code (specifically the transformer model) still work?
I got the equivalent data files for Visual Genome from this repo which is heavily based on your repo -- when I trained it with the same hyper-parameters as MSCOCO, the scores were oscillating slightly around:
Bleu_1: 0.056
Bleu_2: 0.034
Bleu_3: 0.021
Bleu_4: 0.012
METEOR: 0.078
ROUGE_L: 0.224
CIDEr: 0.047
for as long as I trained it.
Do you think any hyper-parameter or architectural changes may be needed so that the transformer model works well on the Visual Genome dataset?
Thank you once again for both making your work public, and also for being very active on these questions with your prompt replies! I really appreciate it!

How about following the hyperparameter in that code. I think the change made in that repo compared to mine is not that much. Just dozens of commits. Should be easy to track.

Thanks for your response.
I used the hyper-parameters in that code (which were very very similar to yours) and observed the same results.
Do you have any ideas why this may be happening, or anything that can be tried?
Thanks once again for your continuous support. Much appreciated.

did you use block-trigram?

No, I did not.
The 'Training for Diversity in Image Paragraph Captioning' code doesn't use block-trigrams for the initial cross-entropy training, it only used it for the self-critical sequence training portion -- But it achieves very good BLEU/METEOR/ROUGE_L (not CIDEr) scores during the initial cross-entropy without block-trigrams...
If I forgot to mention this earlier, the results I posted previously were from the stage before self-critical sequence training.
I can try adding block-trigrams in both the cross-entropy and the self-critical phases separately.

What about turning it on during evaluation?
Ruotian Luo

On Aug 19, 2019, at 9:21 PM, Arjun Gupta<EMAIL_ADDRESS>wrote:
No, I did not.
The 'Training for Diversity in Image Paragraph Captioning' code doesn't use block-trigrams for the initial cross-entropy training, it only used it for the self-critical sequence training portion -- But it achieves very good BLEU/METEOR/ROUGE_L (not CIDEr) scores during the initial cross-entropy without block-trigrams...
If I forgot to mention this earlier, the results I posted previously were from the stage before self-critical sequence training.
I can try adding block-trigrams in both the cross-entropy and the self-critical phases separately.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or mute the thread.

Did you mean turning block-trigrams on only during evaluation and not during training?
I set block-trigrams to 1 only during evaluation and not during training and got pretty much the same results as last time:
Bleu_1: 0.056
Bleu_2: 0.033
Bleu_3: 0.019
Bleu_4: 0.011
METEOR: 0.075
ROUGE_L: 0.207
CIDEr: 0.036
Is this what you meant?

Hi @arjung128,
Have you made it work? I am curious to know the results for image paragraph captioning using a transformer, as a transformer is suited for long sequences such as paragraphs


The model is not working for different image classification problems, can you explain how to go about this issue?

I am using kaggle dataset for Food-101 which is similar in structure to the pickle files you used. The accurqcy score is juggling between 0.04 and 0.0 even after 1500 steps.

Link: https://www.kaggle.com/kmader/food41/data
the data i specifically downloaded was 32x32x3 as per the one you used for the traffic sign data.

Can you please tell the reason about this issue? what could be the steps that are to be taken to deal with it?


Add a function returning the amount underlying NFT seller gets on sale

So a function that returns the clone's worth at the head of the queue, and the subsidy summed together?

since we consider floor clone as well, it won't be as simple. We can extract out some code from onTokenReceived in a view function.


Add description on PyPI

There should be a project description on PyPI: https://pypi.org/project/aixcalibuha/

Closed by #16


Add Webhook alerting functionality

addressing issue #50
This pull request adds a webhook dispatcher client to the client library.
At the time of writing this, it is a draft to ensure the code style I've written is compatible with the standards of the project.
Please let me know if anything needs changing while I write tests and example code.

@npmaile That's not what was was needed! You can see that the AlertWebhook type was left as // AlertWebhook webhook and the type was defined as // type webhook func(models.BarkLog) error (both were commented)!
The webhook was supposed to be used as a mere function - this is a function that was to be supplied by the user. We have to understand the usage of the webhook. The usage ties to the ALERT log level. So that when the client (and maybe someday the server too) encounters an ALERT level log, it will call the supplied webhook function. The function of this Webhook is to call an external service, primarily for alerting the user of a near-fatal event, something that needs to be looked into urgently.
Now, different people have different needs. My alerting mechanism might be to send the event to slack while another person or team might want to send alert to PagerDuty while someone else might want to trigger am email to their SRE team or whatever. We can't determine what the user will do.
So the best we can do is to leave the option open - let the user write the function that does what they need. The authentication mechanism, the method to call (HTTP/GRPC/send to another channel etc.) is open to their choices. Hence that choice. That was the reason why such definitions were chosen.

@npmaile That's not what was was needed! You can see that the AlertWebhook type was left as // AlertWebhook webhook and the type was defined as // type webhook func(models.BarkLog) error (both were commented)!
The webhook was supposed to be used as a mere function - this is a function that was to be supplied by the user. We have to understand the usage of the webhook. The usage ties to the ALERT log level. So that when the client (and maybe someday the server too) encounters an ALERT level log, it will call the supplied webhook function. The function of this Webhook is to call an external service, primarily for alerting the user of a near-fatal event, something that needs to be looked into urgently.
Now, different people have different needs. My alerting mechanism might be to send the event to slack while another person or team might want to send alert to PagerDuty while someone else might want to trigger am email to their SRE team or whatever. We can't determine what the user will do.
So the best we can do is to leave the option open - let the user write the function that does what they need. The authentication mechanism, the method to call (HTTP/GRPC/send to another channel etc.) is open to their choices. Hence that choice. That was the reason why such definitions were chosen.

no worries. That's why I only opened the draft and didn't start testing anything yet. It wasn't particularly clear exactly what you wanted from the issue that was open at the time, and I didn't get any guidance when I mentioned it in the Discord. No need to hit me with the two exclamations there.

Cool. Just to say it - I use exclamation ❗ marks rather freely.  ---- On Wed,11 Oct 2023 16:07:51 +0530  @.***  wrote ----
@npmaile That's not what was was needed! You can see that the AlertWebhook type was left as // AlertWebhook webhook and the type was defined as // type webhook func(models.BarkLog) error (both were commented)!
The webhook was supposed to be used as a mere function - this is a function that was to be supplied by the user. We have to understand the usage of the webhook. The usage ties to the ALERT log level. So that when the client (and maybe someday the server too) encounters an ALERT level log, it will call the supplied webhook function. The function of this Webhook is to call an external service, primarily for alerting the user of a near-fatal event, something that needs to be looked into urgently.
Now, different people have different needs. My alerting mechanism might be to send the event to slack while another person or team might want to send alert to PagerDuty while someone else might want to trigger am email to their SRE team or whatever. We can't determine what the user will do.
So the best we can do is to leave the option open - let the user write the function that does what they need. The authentication mechanism, the method to call (HTTP/GRPC/send to another channel etc.) is open to their choices. Hence that choice. That was the reason why such definitions were chosen.
no worries. That's why I only opened the draft and didn't start testing anything yet. It wasn't particularly clear exactly what you wanted from the issue that was open at the time, and I didn't get any guidance when I mentioned it in the Discord. No need to hit me with the two exclamations there.
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you commented.Message ID: @.***>

closing in favor of #68


Autofocus option

Please mark this as a feature request.  Sorry if I am in the wrong place.
It would be nice to have an autofocus option on bootstrap_field
For obvious reasons.  Thanks.

https://github.com/dyve/django-bootstrap3/issues/226


Modifiers help

Is there a way to add a vanilla tag (like the /tags command ones) to a modifier?
how do you set attributes to stack/add instead of replace when multiple are used at once?
(Working with datapacks for a semi race system using modifiers)

as an example for the 1st one, being able to execute a command as every entity with the “magical” tag or having a spell check for a tag and run a specific set of actions based in the result (currently using that with passive spells for things like silver or garlic type effects)
There is a tags section in the mage data but i haven’t been able to make them compatible with selections using @a[tag] commands or when checking using the/tag get command

You can specify an operation for attributes, like:
damageboost:
  entity_attributes:
    generic_attack_damage:
      value: 20
      operation: MULTIPLY_SCALAR_1

Options are from here: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/attribute/AttributeModifier.Operation.html
I have no tag support, not sure that's even possible outside of a datapack.


[stable/kube2iam] Increase default quota to prevent throttling and OOM

What this PR does / why we need it:
I have been running kube2iam in prod for years and I found some folks agreeing about credentials issue because of kube2iam when in fact the problem was... throttling. For old kernel version I do not recommend cpu limits but increase it at least up to 50m is needed.
Also the memory usage in >0.10 version is always higher than 35Mi so increase to 64 is needed too.
Having this a bit higher values as defaults will prevent people that don't monitor throttling properly (or directly doesn't) face this kind of issues that are usually appearing just when they start putting pressure on it.

ping @mgoodness

/ok-to-test


version 1.14 generates errors for tests with CTest fixture

Brief Issue Summary
Tests with fixture are reported as failed in "Testing" tab, even if they are Passed in output logs. Failure indicated is "Expecting one test result.". No issue with previous version 1.13.
Minimal sample of CMakeLists.txt to reproduce. test_1, test_2 and test_3 should be reported as "passed" instead of "failed".
CMAKE_MINIMUM_REQUIRED (VERSION 3.7)

project(cmake_fixture)

enable_testing()

# Create a fixture to setup before tests / cleanup after tests
add_test(NAME pre_ctest COMMAND sleep 5)
add_test(NAME post_ctest COMMAND sleep 1)
set_tests_properties(pre_ctest PROPERTIES FIXTURES_SETUP database)
set_tests_properties(post_ctest PROPERTIES FIXTURES_CLEANUP database)
set_tests_properties(pre_ctest post_ctest PROPERTIES RESOURCE_LOCK database_access)

add_test(NAME test_1 COMMAND sleep 1)
set_tests_properties(test_1 PROPERTIES FIXTURES_REQUIRED database)
set_tests_properties(test_1 PROPERTIES RESOURCE_LOCK database_access)

add_test(NAME test_2 COMMAND sleep 1)
set_tests_properties(test_2 PROPERTIES FIXTURES_REQUIRED database)
set_tests_properties(test_2 PROPERTIES RESOURCE_LOCK database_access)

add_test(NAME test_3 COMMAND sleep 1)
set_tests_properties(test_3 PROPERTIES FIXTURES_REQUIRED database)
set_tests_properties(test_3 PROPERTIES RESOURCE_LOCK database_access)

CMake Tools Diagnostics
{
  "os": "linux",
  "vscodeVersion": "1.77.3",
  "cmtVersion": "1.14.30",
  "configurations": [
    {
      "folder": "/home/axis/workspace/buggy_cmake",
      "cmakeVersion": "3.26.3",
      "configured": true,
      "generator": "Unix Makefiles",
      "usesPresets": false,
      "compilers": {
        "C": "/opt/rh/devtoolset-8/root/usr/bin/gcc",
        "CXX": "/opt/rh/devtoolset-8/root/usr/bin/g++"
      }
    }
  ],
  "cpptoolsIntegration": {
    "isReady": true,
    "hasCodeModel": false,
    "activeBuildType": "Debug",
    "buildTypesSeen": [
      "Debug"
    ],
    "requests": [],
    "responses": [],
    "partialMatches": [],
    "targetCount": 0,
    "executablesCount": 0,
    "librariesCount": 0,
    "targets": []
  },
  "settings": [
    {
      "communicationMode": "automatic",
      "useCMakePresets": "auto",
      "configureOnOpen": true
    }
  ]
}

Debug Log
No response
Additional Information
Screenshot below shows in "output log" pane that test_3 is Passed, but it is reported as a failure in "Testing" pane and an error is displayed.

The fix for this isssue from #3160 is now publicly available in the pre-release version of the extension 1.15.6.

Pre release 1.15.6 fixed it. Tanks for the fix.


DRAFT: MVP - Optional upload of parameters to the topic model

Context

We want to be able to specify parameters to be used in the topic model. Do this by uploading a config file.
Changes proposed in this pull request

Guidance to review

Link to JIRA ticket

Things to check

[ ] I have added any new ENV vars in all deployed environments and updated the .env.example and .env.test files in the repo

Closing as I think this will change.


Issues with Hanabi rewards and self-play.

Hello,
I was checking policy gradient algorithm on HLE.
Firstly, I think there is something wrong with how Hanabi handles rewards (or I am missing something). I ran this simple code (similar to PG for poker example) and looked how agents save rewards. I made discount =  0, so agent._dataset['returns'] is a list of immediate rewards.
from __future__ import absolute_import
from __future__ import division
from __future__ import print_function
import tensorflow as tf
from open_spiel.python import policy
from open_spiel.python import rl_environment
from open_spiel.python.algorithms import policy_gradient

game = "hanabi"
num_players = 2
discount =0
env_configs = {"players": num_players, 'max_life_tokens' : 1, 'colors' : 2,
               'ranks' : 5, 'hand_size' : 2, 'max_information_tokens' : 3, 'discount' : discount}
env = rl_environment.Environment(game, **env_configs)
info_state_size = env.observation_spec()["info_state"][0]
num_actions = env.action_spec()["num_actions"]

with tf.Session() as sess:
    agents = [policy_gradient.PolicyGradient(sess, idx, info_state_size, num_actions,
                                             hidden_layers_sizes=(128,)) for idx in range(num_players)]

    sess.run(tf.global_variables_initializer())
    for ep in range(1):
        time_step = env.reset()
        while not time_step.last():
            player_id = time_step.observations["current_player"]
            print('Player %d' % player_id)
            fireworks_before = env._state.observation()[30:47]

            agent_output = agents[player_id].step(time_step)
            action_list = [agent_output.action]
            time_step = env.step(action_list)

            if not time_step.last():
                fireworks_after = env._state.observation()[30:47]
            else:
                fireworks_after = 'lost'

            print(fireworks_before, '-->', fireworks_after, '\n')
        for agent in agents:
            agent.step(time_step)
print('\n')
print('Agent 0 rewards history:')
print(agents[0]._dataset['returns'])
print('Agent 1 rewards history:')
print(agents[1]._dataset['returns'])

This is an example of weird output.
P0 get 0pt, then P1 gets 1pt and then P0 loses. As I understand, P0 should have rewards [1, -1] which is correct. However P1 should have [0] since he scored a point and right after P0 lost it.
Player0
Fireworks: R0 Y0  --> Fireworks: R0 Y0
Player 1
Fireworks: R0 Y0  --> Fireworks: R0 Y1
Player 0
Fireworks: R0 Y1  --> lost
Agent 0 rewards history:
[1.0, -1.0]
Agent 1 rewards history:
[-1.0]
Second question is concerning self-play. I would like to run PG agent in a self-play there it plays with itself (not similar agent.) All examples I found in open_spiel have several copies of agents playing with each other and learning separately.  As I understand, using one agent to play with itself in current implementation will not work since episode experience of different players will mix up.

Thanks for the report and the clear reproduction!
We agree the behaviour isn't right and we are discussing how best to fix it.
This may take us a couple of days, but we'll be as quick as we can.
On Mon, Sep 23, 2019 at 3:47 PM griprox<EMAIL_ADDRESS>wrote:

Hello,
I was checking policy gradient algorithm on HLE.
Firstly, I think there is something wrong with how Hanabi handles rewards
(or I am missing something). I ran this simple code (similar to PG for
poker example) and looked how agents save rewards. I made discount = 0, so
agent._dataset['returns'] is a list of immediate rewards.
from future import absolute_importfrom future import divisionfrom future import print_functionimport tensorflow as tffrom open_spiel.python import policyfrom open_spiel.python import rl_environmentfrom open_spiel.python.algorithms import policy_gradient
game = "hanabi"
num_players = 2
discount =0
env_configs = {"players": num_players, 'max_life_tokens' : 1, 'colors' : 2,
'ranks' : 5, 'hand_size' : 2, 'max_information_tokens' : 3, 'discount' : discount}
env = rl_environment.Environment(game, **env_configs)
info_state_size = env.observation_spec()["info_state"][0]
num_actions = env.action_spec()["num_actions"]
with tf.Session() as sess:
agents = [policy_gradient.PolicyGradient(sess, idx, info_state_size, num_actions,
hidden_layers_sizes=(128,)) for idx in range(num_players)]
sess.run(tf.global_variables_initializer())
for ep in range(1):
    time_step = env.reset()
    while not time_step.last():
        player_id = time_step.observations["current_player"]
        print('Player %d' % player_id)
        fireworks_before = env._state.observation()[30:47]

        agent_output = agents[player_id].step(time_step)
        action_list = [agent_output.action]
        time_step = env.step(action_list)

        if not time_step.last():
            fireworks_after = env._state.observation()[30:47]
        else:
            fireworks_after = 'lost'

        print(fireworks_before, '-->', fireworks_after, '\n')
    for agent in agents:
        agent.step(time_step)print('\n')print('Agent 0 rewards history:')print(agents[0]._dataset['returns'])print('Agent 1 rewards history:')print(agents[1]._dataset['returns'])

This is an example of weird output.
P0 get 0pt, then P1 gets 1pt and then P0 loses. As I understand, P0 should
have rewards [1, -1] which is correct. However P1 should have [0] since he
scored a point and right after P0 lost it.
Player0
Fireworks: R0 Y0 --> Fireworks: R0 Y0
Player 1
Fireworks: R0 Y0 --> Fireworks: R0 Y1
Player 0
Fireworks: R0 Y1 --> lost
Agent 0 rewards history:
[1.0, -1.0]
Agent 1 rewards history:
[-1.0]
Second question is concerning self-play. I would like to run PG agent in a
self-play there it plays with itself (not similar agent.) All examples I
found in open_spiel have several copies of agents playing with each other
and learning separately. As I understand, using one agent to play with
itself in current implementation will not work since episode experience of
different players will mix up.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/deepmind/open_spiel/issues/68?email_source=notifications&email_token=AHAF7THK47GHPIR67IU35M3QLDJIZA5CNFSM4IZL2DZKYY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4HNB2RTA,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AHAF7TGYGMUBKEHRXPUZCDTQLDJIZANCNFSM4IZL2DZA
.

Thanks for the report and the clear reproduction! We agree the behaviour isn't right and we are discussing how best to fix it. This may take us a couple of days, but we'll be as quick as we can.
…
On Mon, Sep 23, 2019 at 3:47 PM griprox @.***> wrote: Hello, I was checking policy gradient algorithm on HLE. Firstly, I think there is something wrong with how Hanabi handles rewards (or I am missing something). I ran this simple code (similar to PG for poker example) and looked how agents save rewards. I made discount = 0, so agent._dataset['returns'] is a list of immediate rewards. from future import absolute_importfrom future import divisionfrom future import print_functionimport tensorflow as tffrom open_spiel.python import policyfrom open_spiel.python import rl_environmentfrom open_spiel.python.algorithms import policy_gradient game = "hanabi" num_players = 2 discount =0 env_configs = {"players": num_players, 'max_life_tokens' : 1, 'colors' : 2, 'ranks' : 5, 'hand_size' : 2, 'max_information_tokens' : 3, 'discount' : discount} env = rl_environment.Environment(game, **env_configs) info_state_size = env.observation_spec()["info_state"][0] num_actions = env.action_spec()["num_actions"] with tf.Session() as sess: agents = [policy_gradient.PolicyGradient(sess, idx, info_state_size, num_actions, hidden_layers_sizes=(128,)) for idx in range(num_players)] sess.run(tf.global_variables_initializer()) for ep in range(1): time_step = env.reset() while not time_step.last(): player_id = time_step.observations["current_player"] print('Player %d' % player_id) fireworks_before = env._state.observation()[30:47] agent_output = agents[player_id].step(time_step) action_list = [agent_output.action] time_step = env.step(action_list) if not time_step.last(): fireworks_after = env._state.observation()[30:47] else: fireworks_after = 'lost' print(fireworks_before, '-->', fireworks_after, '\n') for agent in agents: agent.step(time_step)print('\n')print('Agent 0 rewards history:')print(agents[0]._dataset['returns'])print('Agent 1 rewards history:')print(agents[1]._dataset['returns']) This is an example of weird output. P0 get 0pt, then P1 gets 1pt and then P0 loses. As I understand, P0 should have rewards [1, -1] which is correct. However P1 should have [0] since he scored a point and right after P0 lost it. Player0 Fireworks: R0 Y0 --> Fireworks: R0 Y0 Player 1 Fireworks: R0 Y0 --> Fireworks: R0 Y1 Player 0 Fireworks: R0 Y1 --> lost Agent 0 rewards history: [1.0, -1.0] Agent 1 rewards history: [-1.0] Second question is concerning self-play. I would like to run PG agent in a self-play there it plays with itself (not similar agent.) All examples I found in open_spiel have several copies of agents playing with each other and learning separately. As I understand, using one agent to play with itself in current implementation will not work since episode experience of different players will mix up. — You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub <#68?email_source=notifications&email_token=AHAF7THK47GHPIR67IU35M3QLDJIZA5CNFSM4IZL2DZKYY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4HNB2RTA>, or mute the thread https://github.com/notifications/unsubscribe-auth/AHAF7TGYGMUBKEHRXPUZCDTQLDJIZANCNFSM4IZL2DZA .

Thank you!

Our chosen solution is to require agent.step() to be called for every
environment step on which there may be a reward, not just the ones at which
it is the agent's turn to play. This requires a slight modification to the
agent implementation, coming later today.

Player 0
Fireworks: R0 Y0  --> Fireworks: R0 Y0
Player 1
Fireworks: R0 Y0  --> Fireworks: R0 Y0
Player 0
Fireworks: R0 Y0  --> Fireworks: R0 Y1
Player 1
Fireworks: R0 Y1  --> Fireworks: R0 Y1
Player 0
Fireworks: R0 Y1  --> Fireworks: R0 Y1
Player 1
Fireworks: R0 Y1  --> Fireworks: R0 Y1
Player 0
Fireworks: R0 Y1  --> lost
Agent 0 rewards history:
[0.0, 0.0, 0.0, -1.0]
Agent 1 rewards history:
[1.0, 0.0, -1.0]
Still not working.

Our chosen solution is to require agent.step() to be called for every environment step on which there may be a reward, not just the ones at which it is the agent's turn to play. This requires a slight modification to the agent implementation, coming later today.

Hello, it seems that your solution is still not working.
After few tests I got following example:
Player 0
Fireworks: R0 Y0  --> Fireworks: R0 Y0
Player 1
Fireworks: R0 Y0  --> Fireworks: R0 Y0
Player 0
Fireworks: R0 Y0  --> Fireworks: R0 Y1
Player 1
Fireworks: R0 Y1  --> Fireworks: R0 Y1
Player 0
Fireworks: R0 Y1  --> Fireworks: R0 Y1
Player 1
Fireworks: R0 Y1  --> Fireworks: R0 Y1
Player 0
Fireworks: R0 Y1  --> lost
Agent 0 rewards history:
[0.0, 0.0, 0.0, -1.0]
Agent 1 rewards history:
[1.0, 0.0, -1.0]
In general, player who plays card does not save the reward into his buffer. Also, new implementation of PolicyGradient contains a bug,  line 256 is
self.player_id == time_step.current_player()):it raises error saying that time_step does not have .current_player() method. I guess the line should be self.player_id == time_step.observations['current_player']):`

Did you update your main loop to call step() for every player on every timestep?
e.g.
agent_output = [agent.step(time_step) for agent in agents]
time_step = env.step([agent_output[current_player].action])

Are you sure you have updated the whole repository? current_player has been added here:
https://github.com/deepmind/open_spiel/blob/71d76631feb2e62ee1b90421acf981ee11a28fce/open_spiel/python/rl_environment.py#L97

You are right, I did not update the main loop. However, now I did, and there is another problem.
I am running code from below and it looks that now agent saves reward each step it takes -- even on those when it did None action.
info_state_size = env.observation_spec()["info_state"][0]
num_actions = env.action_spec()["num_actions"]
with tf.Session() as sess:
    agents = [policy_gradient.PolicyGradient(sess,player_id=player_id,info_state_size=info_state_size,
                                             num_actions=num_actions,hidden_layers_sizes=[8])
              for player_id in range(num_players)]

    sess.run(tf.global_variables_initializer())
    time_step = env.reset()
    while not time_step.last():
        current_player = time_step.observations["current_player"]
        fireworks_before = env._state.observation()[30:47]
        agent_output = [agent.step(time_step) for agent in agents]
        time_step = env.step([agent_output[current_player].action])
        if not time_step.last():
            fireworks_after = env._state.observation()[30:47]
        else:
            fireworks_after = 'lost'
        print(fireworks_before, '-->', fireworks_after, '\n')
    for agent in agents:
        agent.step(time_step)

print('\n')
print('Agent 0 rewards history:')
print(agents[0]._dataset['returns'])
print(agents[0]._dataset['actions'])
print('Agent 1 rewards history:')
print(agents[1]._dataset['returns'])
print(agents[1]._dataset['actions'])

Fireworks: R0 Y0  --> Fireworks: R0 Y0
Fireworks: R0 Y0  --> Fireworks: R0 Y0
Fireworks: R0 Y0  --> Fireworks: R0 Y0
Fireworks: R0 Y0  --> Fireworks: R1 Y0
Fireworks: R1 Y0  --> Fireworks: R1 Y1
Fireworks: R1 Y1  --> lost
Agent 0 rewards history:
[0.0, 0.0, 0.0, 1.0, 1.0, -2.0]
[5, None, 4, None, 3, None]
Agent 1 rewards history:
[0.0, 0.0, 0.0, 1.0, 1.0, -2.0]
[None, 6, None, 2, None, 3]

Great! Glad it's now running okay.
The behaviour you describe is working as intended. Both agents see the same
(complete) reward history.
Does this cause a problem?

Well, it is kind of weird. Firstly, lengths of

It seems very weird. May be I misunderstand how you approach learning in this multiplayer in games in general. As far as I understand, there are two options:

Each player is essentially an individual network and learns only according to his own experience. I though that it is the case on open_spiel.
There is one network for all players, and each player just collects batch of experience. Then. all players' experience is used to make gradient step.
How I understood the original Hanabi paper (and actually github/HLE has an example of Rainbow agent which support my idea) used 2nd approach, but I think that 1st is also plausible.

Now, it seems that what agent saves in its experience now is not what it should.
For an agent all other players are basically part of the environment, so its interaction with it looks as follows:
-- Agent makes action (not None action, the real one)
-- Say, immediate reward after the action is r0
-- If episode is terminated, then agent just saves the reward
-- If episode is not terminated, agent waits and accumulates the rewards
-- Each next player i makes action, receives immediate reward r_i. Original 0 agent's reward r0 is then changed as r0 += r_i.
-- If episode is finished after player i made action, then original agent 0 saves accumulated reward
-- If episode does not finish until next agent 0 turn, then it accumulates reward from all other agents and saves it in the beginning of its next turn.
Currently, agent just saves all differences in the game's score and I do not really understand why. Also, learning does not work with None actions. To check it you shall change batch_size to 2, for example, in policy_gradient_test.
Correct me if I misunderstand something,

I replied a bit longer on the reddit thread that I won't copy here, but basically these are two separate paradigms (both are used in different contexts in MARL).

1. Each player is essentially an individual network and learns only according to his own experience. I though that it is the case on open_spiel.

2. There is one network for all players, and each player just collects batch of experience. Then. all players' experience is used to make gradient step.
   How I understood the original Hanabi paper (and actually github/HLE has an example of Rainbow agent which support my idea) used 2nd approach, but I think that 1st is also plausible.

These are two known paradigms in the field of multiagent RL (MARL). 1 is known as independent RL and 2 is known as self-play learning. (1) is maybe more common in the MARL literature more generally whereas the setup the Hanabi paper took (and AlphaZero and TD-Gammon) which is more common in games is (2).
The RL agents such as policy gradients and DQN, interact through the rl_environment (this is partly for historical reasons). When you do that, you normally assume the independent RL setup, because each player is a separate agent and they both think of their environment from their own personal perspective (treating everything else as the environment).

Currently, agent just saves all differences in the game's score and I do not really understand why. Also, learning does not work with None actions. To check it you shall change batch_size to 2, for example, in policy_gradient_test.

The definition of the reward was a choice that we made in the Hanabi Challenge paper and corresponding Hanabi Learning Environment. The reason is that the environment should give a reward signal when a card is scored (since the agent knows this as it happens).

Correct me if I misunderstand something,

You're not wrong. The example you listed out exactly highlights the difference in independent RL and self-play. It is certainly a different setting. To get self-play, you should be able to simply sample data from a single policy, and then go back and loop through all the players and train a single model based on the data from all players.

Hi @griprox , here is an alternative solution you might consider to get self-play working, which involves only a couple of changes to the main loop:

After creating the agents, sync their networks. You can use tf.assign for that.
In the beginning of the episode, sample a player position to be the learner (in 2-player game it's 0 or 1), this agent should .step as usual. The other agents should use .step with is_evaluation=True, so they don't update their networks or buffers.
Periodically sync the other agents' networks with the learner network.

Some considerations:

Syncing the networks too often might induce a harder learning / optimization task. This can cause a cyclical learning behavior (A beats B beats C beats A) or unstable learning process.
As opposed to Independent RL, agents in self-play will learn to "play in every player position" of the game. This might lead to a harder task (so you may need larger networks) or make it easier for the networks to learn as it could serve as a regularizer.
The method @lanctot presented is more data efficient, however slightly more complicated to implement. If you are going for large scale games I'd suggest using @lanctot's suggestion, otherwise the main_loop changes above will work just fine.

@fzvinicius @lanctot
Thank you very much for your responses! I am currently playing with self-play setup of my own implementation, but I hope to try independent agents using open_spiel implementation soon.

Hi @griprox did you have any success in training A2C agents on Hanabi either in your own implementation or using Open Spiel. If so, do you mind sharing the results?

Hi @lanctot , is there someone who has trained A2C under self-play setting on Hanabi using Open Spiel. If so, what are the kind of scores to expect and after how many steps. I have a version that's running but that doesn't seem to be learning anything at all.

Hi @akileshbadrinaaraayanan , my apologies for the delayed reply -- I got the notification while I was on vacation and then completely forgot about it.
As far as I know, nobody has been able to get this to work using vanilla A2C. But I only know of one other person from a conversation on a reddit thread who tried (unless that was you?) and as far as I remember they experienced similar trouble.
I think for actor-critic to work in Hanabi you probably need more than just vanilla A2C: a decent network architecture, probably recurrent, and population-based training. Take a look at the results in our Hanabi challenge paper, e.g. regarding ACHA: https://arxiv.org/pdf/1902.00506.pdf, the population based training made a huge difference (but even the basic architecture was recurrent and trained on batches as well, in addition it used V-TRACE and batched A2C from IMPALA). ACHA was out-performed later by a distributed recurrent DQN in the SAD paper: https://arxiv.org/pdf/1912.02288.pdf, but similarly, there seem to be a lot of enhancements (distributed replay, recurrent nets, auxiliary tasks, double Q-learning, dueling network, etc.)
Have you tried just standard DQN? When you say "not learning anything", do you mean like... 0ish points, 0-5 points, 5-10 points, or <= 15 points?

Ah, the person from the reddit thread was indeed @griprox from this thread. :)


Difficulty with multiple windows

When I have more than one window open, TidyTab seems to have trouble figuring out which one I want to tidy.
Example: Window one has six tabs open. Window two has four. In window one, I click "tidy 6 tabs." Nothing appears to happen. However, when I open the dashboard, I find the four tabs from window two. Similarly, if I click "tidy all but the current tab," I find all but one of the tabs from the other window.
ETA: Chrome 59.0.3071.115, OSX 10.12.5.

Thanks for the report @chialynn.
I presume this bit of code is picking up the window that the background script is running in, not necessarily the frontmost window.
I'll dig in this week!

Fixed: https://chrome.google.com/webstore/detail/tidytab/lkglfdjcamhjoggmabobhggmpfjhccff?authuser=1

That was fast! Thanks!
On Tue, Jul 11, 2017 at 8:32 PM Brian Gonzalez<EMAIL_ADDRESS>wrote:

Fixed:
https://chrome.google.com/webstore/detail/tidytab/lkglfdjcamhjoggmabobhggmpfjhccff?authuser=1
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/eggplanetio/tidytab/issues/99#issuecomment-314610092,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AMxIBa3SQkFkB4PhteTXaIYftwi7Q8jSks5sNBP0gaJpZM4OSz6L
.

@chialynn Have you had a chance to try it out? Did it work for you?

Oh snaps! I've had this problem too!

I just tried it out—seems to be working!


Handle PCRE2 exception: match limit exceeded

Originally pointed out here https://github.com/Morantron/tmux-fingers/issues/112#issuecomment-1888057385
It seems to be a PCRE2 exception, although I still don't know under which circumstances it's raised.

@NeilHanlon can you share the contents of the pane that triggered the exception? You mentioned it crashed on empty panes right? I think it could be related to characters in the shell prompt.

You can open a new pane and figure out the pane id by running echo $TMUX_PANE
Clear screen in that pane.
In another shell or pane run tmux capture-pane -J -p -t <value-of-tmux-pane> > /tmp/pane-contents

So, I went to try and reproduce this... and I can't.
I rebooted over the weekend, so, I guess it is possible that has something to do with it.
I've tried now in a few different panes with varied histories, and I can't seem to reproduce it, so, I think it's safe to close this for now.
Sorry for the noise, and thank you for your work on Fingers :)

No prob! Thank you! Let me know if it happens to you again


Gh 1982 various maven and build fixes

GitHub issue resolved: #1982
Briefly describe the changes proposed in this PR:
Various small fixes to maven and the build.

PR Author Checklist:

[ ] my pull request is self-contained
[ ] I've added tests for the changes I made
[ ] every commit message starts with the issue number (GH-xxxx) followed by a meaningful description of the change
[ ] every commit has been signed off

Note: we merge all feature pull requests using squash and merge. See RDF4J git merge strategy for more details.

Also looks as if this is targeted against the wrong branch.

The rdf* is only in develop. And we are close to merging develop into master I hope with the release of 3.2.0.

Can you be a bit more specific about what IntelliJ complains about that bumping the plugin version solves?
I'm fine with bumping the version (though to be honest I would have preferred if you had created a separate issue and PR for it), but we'll need to run some full build and deployment tests to ensure that everything still works. The source plugin is mostly used as part of the release deployment cycle so it could all look fine now, only to bite us when it's release time.

Documentation for that plugin isn't very good. No mention of what the source tag is supposed to do.

I didn't really want to make 3 branches, 3 commits and 3 issues for minor non-functional fixes.

I didn't really want to make 3 branches, 3 commits and 3 issues for minor non-functional fixes.

Fair enough, it's always a tradeoff to some extent. I'd prefer erring on the side of caution though. It makes it easier to separate things again later on if we find we need to roll back part of this.

Merge commit will help with that.

Documentation for that plugin isn't very good. No mention of what the source tag is supposed to do.

I can't find it either, but this was introduced into our pom about 8 months ago by @barthanssens (see https://github.com/eclipse/rdf4j/commit/4baf5084920f0b092e8f93e24088d724c301766d) apparently having something to do with getting SolR/ElasticSearch deps included in the javadoc. From the look of it I wonder if it's simply a copy-paste error (since the same config option was also added to the javadoc plugin, where it is a documented option). @barthanssens  I know it's a while back but do you think you remember why you added this?

Emailed Bart. Removed the erroneous tag and downgraded the version back to the original one. So I think this is ready to merge now. Nothing really needs to be tested now. I can squash and merge since we don't need to keep the history anymore.


pull request for e2e test at 01/24/2017 05:26:12

:white_check_mark: Validation status: passed
For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Delete from database, fails in response

Describe the bug
In query_builder.py at line 33 in return, response.json() fails with JSONDecodeError when api returns response.content as empty.
To Reproduce
Steps to reproduce the behavior:
Delete object from supabase database:
client.delete().eq("some id", some_id).execute()

Object is successfully deleted, but response message is not able to convert to json at throws exception.
Expected behavior
Deletion of object, and a response message telling me it was successfully, or an empty one.
Desktop (please complete the following information):

OS: macOS Monterey
Browser: Google Chrome
Version 96.0.4664.45 (Official Build) (arm64)

Sorry for the delay in responding, you could test that with the latest commit in develop.

This seems similar to https://github.com/supabase-community/supabase-py/pull/75/files
Are there plans to do a supabase_py release anytime soon? The above PR was fixed some time ago, but still hasn't been released.

Another running into this issue.

A release is coming asap, before new year's eve 😄

@dreinon @songololo @leynier  @aantn closing since it should be fixed with the latest release.
Let me know if anyone still has issues.
Thanks!


Typo in README

from quickbooks.object.customer import Customer should be from quickbooks.objects.customer import Customer

Fixed. Thanks!


Rag opensearch usecase with Beam's MLTransform

Added Insertion and Enrichment pipeline for RAG (Retrival Augmented Generation) usecase using OpenSearch vector database #GSOC-259

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

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

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

See CI.md for more information about GitHub Actions CI or the workflows README to see a list of phrases to trigger workflows.

R: @damccorm @jrmccluskey

I'd recommend rebasing the PR now that the initial RAG PR is merged

@jrmccluskey - thanks for the review suggestions! I have made changes as per your feedback, please let me know if these look good.

Code looks good, probably time to focus on cleaning up the notebook
Same note on rebasing the branch, see https://stackoverflow.com/questions/7929369/how-to-rebase-local-branch-onto-remote-master/18442755#18442755

@jrmccluskey - the branch seems upto date with master This branch has no conflicts with the base branch. Am I missing something?

@itsayushpandey I think this is the problem:

Your branch doesn't contain the most recent set of changes. To fix, you can:
git remote add upstream https://github.com/apache/beam.git
git fetch upstream
git rebase upstream/main

Hi @damccorm - the trailing commits of branch should have been updated. Can you please check if this looks good to merge now?

Hi @damccorm - the trailing commits of branch should have been updated. Can you please check if this looks good to go now?


Efficient lookup in history, especially for Postable

The present implementation is a complicated lookup, when there should be a reference graph just locating the latest with the correct typetag and then returning it.

Corrected in 6479e6ad39a6d07c44 after deploying in cc5798c4e3db8b5b (implemented before that)

Corrected in 6479e6ad39a6d07c44 after deploying in cc5798c4e3db8b5b (implemented before that)


Client side JavaScript version

B"H
Fantastic library
Is there any way to get this working fast on the browser using wasm or something?

Not really. There are some implementations for whisper running fully in the browser. Yet RealtimeSTT also uses two VAD model and two wakeword detection models. These all don't work solely in the browser.