Fixed Aws\Constantly error

Fixes issue https://github.com/naderman/composer-aws/issues/15 , AWS redeclaration error by ensuring the require_once path is the same.

Thanks for this! Please remove the commit adding a version number to composer.json. the version number does not belong in composer.json files, it is inferred from git tags, see also my blog post here: https://blog.packagist.com/tagged-a-new-release-for-composer-and-it-wont-show-up-on-packagist/

Tagged a 1.0.1 release for this: https://github.com/naderman/composer-aws/releases/tag/1.0.1


Option to disable drag/drop on the board

Another feature request: Provide an option to keep the boards affixed and not allow drag/drop operations on the board itself.

I don´t see any option to not allow drag inside the original board. The dropEl its called even if i drag a item to the same board. Its possible to create this 'feature'?

Hi @brunonetadmin , in fact dropEl is called even at the same origin. Are you trying to prevent reordening? Tell us more about what are you trying to achieve.

I´m trying to execute the action of consulting(ajax) the backend, and showing the status change notifications, but i don´t wanna make anything if the item its dropped in the same column. And i´m not using reordering itens.
And how i trigger a custom action for example, if i try to move a item that are forbidden to go to that column?

You can check if source and target are the same. If so, you don't fire ajax request. ;)
dropEl: function(el, source, target, siblings) {
    if (source === target) {
        return;
    }

    $.ajax( //...
}


[rtextures] add MixColors. a function to mix 2 colors together

The functions takes 2 Colors and a Float t as input. The float t is used to set what color is more dominant.
t=0.0f - color1 is more dominant
t=0.5f - both colors are equally dominant (best choice from my testing)
t=1.0f - color2 is more dominant

@SusgUY446 @veins1 It could be added as ColorLerp() in the Color*() functions section, seems more appropiate

why is a Color* more appropiate when most functions need a Color not a pointer to one

@SusgUY446 I was not referring to a pointer, I was referring to ColorName() functions group, for naming consistency.

oh okay.

@SusgUY446 Please, could you review the mentioned points?

okay

@SusgUY446 Thanks for the improvement, I'm reviewing it...


Update ui5-manifest.json

Update the ui5-manifest.json schema to the version v.1.21.0 according to the change in UI5 1.77.
With manifest version 1.21.0 the sap.app i18n section can hold an object containing bundleUrl, supportedLocales, and fallbackLocale.
Details:

https://sapui5.hana.ondemand.com/#/topic/ec753bc539d748f689e3ac814e129563.html
https://blogs.sap.com/2020/06/03/ui5ers-buzz-54-i18n-with-supportedlocales-and-fallbacklocale-configuration/

@apazureck, please review this PR, hope my change could improve the usability of this schema.


Adds delegated flag to website codebase volume

This helps to address issue #93 by adding a delegated flag onto the website codebase volume for the drupal service.
I was seeing the modules page (Manage->Extend) take almost 30 s to load, now it is down to 7-9 s.  Other pages load in 1-3 seconds now.

thank you!

Seems safe to merge according to the docs it's ignored on all other platforms
https://docs.docker.com/storage/bind-mounts/


[FEATURE] Add a setting to randomize UI visualization of the records

As a result of some comments regarding the Prolific integration, I think that it can be useful to add a setting to decide if randomize the visualization of the records in the UI or not. Even if the origin is this integration, I believe that it can also be helpful for the use cases of other users. @nataliaElv what do you think?
Is your feature request related to a problem? Please describe.
I'm not sure when the randomization happens, but maybe we can add this setting when pushing to Argilla.
Describe the solution you'd like
A clear and concise description of what you want to happen.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here.

You can order them by sorting the records according to the insertion time.


Terminals are not recognised properly

The TERMINAL variable from here
https://github.com/Mayccoll/Gogh/blob/5037eea952219fe16608120dbb70a2fe239bdb7e/apply-colors.sh#L60
does not resolve to the terminal's name but to the name of the shell (e.g. zsh/bash).
As a result, the advertised  $  wget -O gogh https://git.io/vQgMr && chmod +x gogh && ./gogh && rm gogh only works for gnome-terminal because the respective code is executed when $TERMINAL does not match any specific terminal-string.
This commit made gogh.sh call apply-colors.sh indirectly:
https://github.com/Mayccoll/Gogh/blob/71c22527212f179e634b7057e5b61ce67409958c/gogh.sh#L54
To fix this bug we should use source instead of running ./gogh

👍


ui: Make "stay connected" last for more than browser life

Right now, if we login with the stay connected option, the cookie life time is the same as the browser. It'd be more convenient to do as many other, as add a fixed interval like some years.

Fixed by commit a1b946244c9b50ebb8eb623c1b3cccb21c65b3ec.

After further disccusions, there's no need for not staying connected. Commit 190b9fb1f1a2e32dab554e6f916b4f916de88e0d remove t he stay connected option, and always act as if the stay connected option was checked.


Creating instrumented module

Hi,
I'm trying to create a new module to track my Chamelon templates, using Jinja2 module as template.
Everything seems OK, but I have two questions:

how can I remove traceback from captured spans? Using "leaf=True" in capture_scan call doesn't seems to be efficient...
I set "RENDER" as span's "name" and use my template filename as span's "context". How can I get this context in Kibana's APM UI?

Many thanks for any answer or advise...
Best regards,
Thierry

Hi @tflorac
sorry for the long answer time, I was on vacation. Unfortunately, there isn't currently a way to indicate in capture_span to not collect a stack trace. However, this is an interesting idea, I'll look into implementing it!
The span context isn't currently exposed in the APM UI. We are currently working on making that a better experience and hope to have something in one of the coming releases. For now, I'd suggest to include the filename in the span name for better visibility.

Hello @tflorac! I'm going through and cleaning up older issues -- are you still interested in the ability to not capture the stack trace with capture_span? If so, would you mind opening a new issue with that feature request? I'm going to close this issue for now.


Allow uploading multiple templates

With the new ALDocument class, it should be possible to elegantly handle generating boilerplate code that can control when/how/in what order multiple attachments are handled.

Is this related to #98?
I saw a comment # TODO(#113): allow multiple attachments here eventually in #310 yml file, which indicates that this is about attachment templates, not the main "form template".


Update mockito-3-4 to <IP_ADDRESS>

Updates org.scalatestplus:mockito-3-4 from <IP_ADDRESS> to <IP_ADDRESS>.
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "org.scalatestplus", artifactId = "mockito-3-4" } ]

labels: test-library-update, commit-count:1

Codecov Report

Merging #174 (03953e4) into main (f90b637) will decrease coverage by 0.31%.
The diff coverage is 72.89%.

@@            Coverage Diff             @@
##             main     #174      +/-   ##
==========================================
- Coverage   68.99%   68.67%   -0.32%
==========================================
  Files         162      158       -4
  Lines        3309     3231      -78
  Branches       86       81       -5
==========================================
- Hits         2283     2219      -64
+ Misses       1026     1012      -14

Impacted Files
Coverage Δ

...src/main/scala/surge/core/KafkaProducerActor.scala
63.79% <ø> (ø)

...c/main/scala/surge/core/SurgePartitionRouter.scala
100.00% <ø> (ø)

...surge/internal/core/SurgePartitionRouterImpl.scala
31.25% <ø> (ø)

.../surge/internal/kafka/KafkaProducerActorImpl.scala
87.09% <ø> (ø)

...rnal/persistence/KTableInitializationSupport.scala
100.00% <ø> (ø)

...e/internal/persistence/PersistentActorRegion.scala
83.87% <ø> (ø)

...ain/scala/surge/javadsl/command/AggregateRef.scala
0.00% <0.00%> (ø)

...ain/scala/surge/javadsl/command/SurgeCommand.scala
0.00% <0.00%> (ø)

.../main/scala/surge/javadsl/common/HealthCheck.scala
0.00% <ø> (ø)

...main/scala/surge/internal/akka/cluster/Shard.scala
96.25% <ø> (ø)

... and 20 more

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 362f417...03953e4. Read the comment docs.


feat(plugin): minimap

This pull request has been discarded, replaced by https://github.com/antvis/G6/pull/6103


Upload project files (sync) can't handle spaces in file paths

Need to quote paths in mpremote.ts sync()

Fixed in 1.21.1


Lots of folders and files remain in disk and memory when create container failed

Description of problem
Create container failed, lots of folders and files remain in disk and memory.
How to reproduce:
[root@localhost ~]# docker run -itd --cpuset-cpus 0-1 --runtime=kata busybox sh
e269beb75b8af31dfc006513186dd251bed22a89766c963f6093f5dae30dfb7a
docker: Error response from daemon: oci runtime error: rpc error: code = Internal desc = Could not run process: container_linux.go:348: starting container process caused "process_linux.go:279: applying cgroup configuration for process caused \"failed to write 0-1 to cpuset.cpus: write /sys/fs/cgroup/cpuset/docker/e269beb75b8af31dfc006513186dd251bed22a89766c963f6093f5dae30dfb7a/cpuset.cpus: invalid argument\"".

Since there's not enough cpus in the guest, so this container creation failure is expected.
Expected result
No folders or files of this sandbox left in disk or memory.
Actual result
[root@localhost ~]# ll /var/lib/vc/sbs/e269beb75b8af31dfc006513186dd251bed22a89766c963f6093f5dae30dfb7a
e269beb75b8af31dfc006513186dd251bed22a89766c963f6093f5dae30dfb7a

[root@localhost ~]# ll /run/kata-containers/shared/sandboxes/e269beb75b8af31dfc006513186dd251bed22a89766c963f6093f5dae30dfb7a
e269beb75b8af31dfc006513186dd251bed22a89766c963f6093f5dae30dfb7a                            e269beb75b8af31dfc006513186dd251bed22a89766c963f6093f5dae30dfb7a-8f1a8a8010384ce9-hosts
e269beb75b8af31dfc006513186dd251bed22a89766c963f6093f5dae30dfb7a-6024b05dd556307c-hostname  e269beb75b8af31dfc006513186dd251bed22a89766c963f6093f5dae30dfb7a-a1bb6363be652bc9-resolv.conf

[root@localhost ~]# ll /run/vc/sbs/e269beb75b8af31dfc006513186dd251bed22a89766c963f6093f5dae30dfb7a
agent.json  devices.json  e269beb75b8af31dfc006513186dd251bed22a89766c963f6093f5dae30dfb7a  hypervisor.json  lock  network.json  state.json

Suggestion
I think we should add rollback operation on virtcontainers/sandbox.go: createSandbox() and virtcontainers/container.go: createContainer(), or handles more deletions on kata-runtime delete
I'm working on it now and please share your comments~

@jingxiaolu
The revert patch cleanupSandbox #292  should be taken up again. Considering the affect of docker cp #778, we need to treat host paths carefully. Try to  extended the patch and find a good way to fix the resource remaining.
Go ahead and get it down~
/cc @devimc  @jodh-intel

Hi @devimc #847 is about namespaces, but this #862 is trying to rollback resources left in disk/memory when creation failure, i think these two are different~
pls correct me if I am wrong~

cloesed via #880


Example in documention does not work

Hi,
I was looking into the documents for updating test steps here: https://python-polarion.readthedocs.io/en/latest/workitem.html#test-case-workitem
I use the exact same code copied from the documentation,
wi = project.getWorkitem('ISBUTEST-7351')
wi._polarion_test_steps.steps.TestStep[0].values.Text[1].content = 'New description!'

# getting the test management service and saving the test steps
service = client.getService('TestManagement')
service.setTestSteps(wi.uri, wi._polarion_test_steps.steps.TestStep)

#reload workitem so it's in sync
wi._reloadFromPolarion()

I got the following error:

Exception has occurred: AttributeError
'NoneType' object has no attribute 'steps'
File "C:\Hawk\ias_desktop_automation\spikes\testing_modify_steps.py", line 10, in
wi._polarion_test_steps.steps.TestStep[0].values.Text[1].content = 'New description!'
AttributeError: 'NoneType' object has no attribute 'steps'

I did modify the code to retrieve the test steps from the test management service:
service = client.getService("TestManagement")

wi = project.getWorkitem('ISBUTEST-7351')

test_steps = service.getTestSteps(wi.uri)
test_steps.steps.TestStep[0].values.Text[1].content = 'New description!'

# getting the test management service and saving the test steps
service = client.getService('TestManagement')
service.setTestSteps(wi.uri, test_steps.steps.TestStep)

#reload workitem so it's in sync
wi._reloadFromPolarion()

It did go farther but it failed when trying to set the test step:

Exception has occurred: ValidationError
Missing element content (setTestSteps.testSteps.values.Text.content)
File "C:\Hawk\ias_desktop_automation\spikes\testing_modify_steps.py", line 19, in
service.setTestSteps(wi.uri, test_steps.steps.TestStep)
zeep.exceptions.ValidationError: Missing element content (setTestSteps.testSteps.values.Text.content)

I feel that this validation error is incorrect because if you look at Test Service xml (https://almdemo.polarion.com/polarion/ws/services/TestManagementWebService?wsdl) it states that values under testSteps is supposed to be an ArrayOfText with the following definition:
complexType name="ArrayOfText">
<sequence>
<element maxOccurs="unbounded" minOccurs="0" name="Text" type="tns2:Text"/>
</sequence>
</complexType>

which means that "setTestSteps.testSteps.values.Text" is supposed to be an array and so content should be within an element in the Text.
Is this a bug in the python library or something further down in the SDK?

I think this might be the same cause as discovered in #100. In my case i got the same error as you did and the fix suggested there does seem to fix it so the example works again.

Hi,
Thank you so much for replying back and giving all the suggestions. They were helpful.
Turns out, the error I was getting was due to the fact that I had a Text Object in my Test Steps where the content was "None" and it complained about that. Once I set that value to a string value ("N/A"), it started to work.
It also looks like that when you get test steps on a test case work item with no test steps, chances are that you would have text Items that have content set to "none". The user would have to know that if they are to reset the steps, that they must make sure all contents that were "None:" have to be set a value.
Maybe perhaps as an improvement, maybe have some sort of method that get test steps that will already ensure that content set to "None" will have at least an empty string character? "".
Thank you once again for maintaining this plugin. I find this really useful

Yeah, I did run into that issue as well. But I think i have all cases covered now. I've created tests and update the documentation in #102 so I hope that will work better for you. It should be released shortly.

This was released in V1.2.0 and I think this will cover your needs. Please close the issue when you tried these changes. Thanks!

Thank you for addressing these so quickly.
I can test it out for you and then close this ticket when I get the fix. When would this branch be merged and then the new version be published?

I'll push out a new release tonight :)

Hi, I was able to get the latest version and then verify that:

the Error message for the add test step works as expected
The updateTestStep happy Path works as expected

One small issue:
I tried a case where I call the updateTestStep without the index. The error message is also cryptic here:

Traceback (most recent call last):
File "c:\Hawk\ias_desktop_automation\spikes\testing_modify_steps.py", line 29, in
wi.updateTestStep("New Modified Step", "New Modified step description", "Pass")
File "C:\Program Files\Python39\lib\site-packages\polarion\workitem.py", line 627, in updateTestStep
if index >= len(self._polarion_test_steps.steps.TestStep):
TypeError: '>=' not supported between instances of 'str' and 'int'

This could be easily resolved if you add an assert that index is an integer:
assert type(index) == int, "First argument should be an integer that specifies the the position of the test step to be updated."

On an unrelated question, am I allowed to create a branch to fix something in the codebase?


Make caption field single line Issue#4795

Description (required)
When uploading image the caption  must not be multiline.
Fixes #4795
What changes did you make and why?
I changed the caption field inputType to text. earlier it was textMultiLine.
Tests performed (required)
Tested on Redmi 6 Pro
Build variant Beta
API LEVEL 28
Screenshots (for UI changes only)

@nicolas-raoul thanks for assigning me first issue. I have created PR. Please Review it.


Change auto_ipo menu for thx

The correct menu is "新股批量申购" for 同花顺

Hello @lynic! Thanks for submitting the PR.

In the file easytrader/config/client.py, following are the PEP8 issues :

Line 21:5: E303 too many blank lines (2)


Find All References feels unreliable

Type: Bug
If I place the cursor on a class name and run Find All References I'm only shown references to that class within that same file. I expect this command to not only show me references within the same file, but also where the class is defined and all other places in my project where the class if being imported and used.
Also, if I place the cursor on the class name and run this command (in the file the class is defined in) and don't have the file that uses this class opened, I am not shown the class reference in that file closed anymore, only the line where the class is being defined at (from where I ran the command).
VS Code version: Code 1.72.2 (d045a5eda657f4d7b676dedbfa7aab8207f8a075, 2022-10-12T22:16:26.920Z)
OS version: Linux x64 5.19.15-201.fc36.x86_64
Modes:
Sandboxed: No

System Info

Item
Value

CPUs
AMD Ryzen 7 PRO 5750G with Radeon Graphics (16 x 3395)

GPU Status
2d_canvas: enabledcanvas_oop_rasterization: disabled_offdirect_rendering_display_compositor: disabled_off_okgpu_compositing: enabledmultiple_raster_threads: enabled_onopengl: enabled_onrasterization: enabledraw_draw: disabled_off_okskia_renderer: enabled_onvideo_decode: disabled_softwarevideo_encode: disabled_softwarevulkan: disabled_offwebgl: enabledwebgl2: enabledwebgpu: disabled_off

Load (avg)
0, 0, 0

Memory (System)
31.14GB (20.24GB free)

Process Argv
--unity-launch --crash-reporter-id 60a43f92-093c-479d-9594-8d692eb08608

Screen Reader
no

VM
0%

DESKTOP_SESSION
gnome

XDG_CURRENT_DESKTOP
GNOME

XDG_SESSION_DESKTOP
gnome

XDG_SESSION_TYPE
x11

Extensions (4)

Extension
Author (truncated)
Version

json-tools
eri
1.0.2

vscode-drawio
hed
1.6.4

rest-client
hum
0.25.1

gitblame
wad
9.0.1

A/B Experiments
vsliv368:30146709
vsreu685:30147344
python383cf:30185419
vspor879:30202332
vspor708:30202333
vspor363:30204092
vslsvsres303:30308271
pythonvspyl392:30443607
vserr242:30382549
pythontb:30283811
vsjup518:30340749
pythonptprofiler:30281270
vshan820:30294714
vstes263cf:30335440
vscorecescf:30445987
pythondataviewer:30285071
vscod805cf:30301675
binariesv615:30325510
bridge0708:30335490
bridge0723:30353136
cmake_vspar411:30581797
vsaa593cf:30376535
pythonvs932:30410667
cppdebug:30492333
vsclangdc:30486549
c4g48928:30535728
dsvsc012cf:30540253
azure-dev_surveyone:30548225
2144e591:30553903
vscccc:30566498
pyindex848:30577860
nodejswelcome1:30587005
fc301958:30573243

What language? I think the scope of "Find All References" will depend on whether or not there's a WorkspaceSymbolProvider for that language. Perhaps you need an extension.

Javascript

Try creating a jsconfig so all JS files (even unopened ones) are treated as part of the same project: https://code.visualstudio.com/docs/languages/javascript#_javascript-projects-jsconfigjson


[backport] Fix complex type checks in _correlate_or_convolve

Backport of #2923

[automatic post] Jenkins, test this please.

Jenkins CI test (for commit bca0a33102b3827ac3a3e05c5339c1c97bea89eb, target branch v7) failed with status FAILURE.

I have seen this test fail in other benchmarks, seem to be flaky

It should be fixed by #2913.

Right, I didn't remember the exact error

#2913 has been merged.

Thanks!
Jenkins, test this please

Jenkins CI test (for commit bca0a33102b3827ac3a3e05c5339c1c97bea89eb, target branch v7) succeeded!


Method to return Kerchunk refs as a dict

So as not to write to a JSON file. This would make testing a lot easier.

Added


Aggregation on array property

I've created roomBox-idx as follows:
[Document(IndexName = "roomBox-idx", StorageType = StorageType.Json,Prefixes =new []{"RoomBox"})]
    public class RoomBoxCacheDto
    {

        [RedisIdField]
        public Ulid Id { get; set; }
        [Indexed]
        public long RoomId { get; set; }
        [Searchable]
        public string RoomName { get; set; }

        public string SeoTitle { get; set; }
        [Indexed]
        public string RoomTypeId { get; set; }
        [Indexed(Sortable = true)]
        public int Area { get; set; }
        [Indexed]
        public FloorType Floor { get; set; }

        public string[] BoxCodes { get; set; }
        [Indexed(JsonPath = "$.EnName")]
        public TagCacheDto[] TagCodes { get; set; }
        [Indexed]
        public string StateCode { get; set; }
        [Indexed(Aggregatable = true)]

        public string CityCode { get; set; }
        [Indexed(Sortable = true)]
        public double Rate { get; set; }
        [Indexed(Sortable = true)]

        public int PersonCapacity { get; set; }
        [Indexed(Sortable = true)]

        public int ExtraPersonCapacity { get; set; }
        [Indexed(Sortable = true)]

        public int BedRoom { get; set; }
        [Indexed(Sortable = true)]

        public int BedCount { get; set; }

        public bool HasDiscount { get; set; }
        [Indexed(Sortable = true)]

        public double BasePrice { get; set; }
        [Indexed(Sortable = true)]

        public double AveragePrice { get; set; }
        [Indexed(Sortable = true)]

        public double AfterDiscount { get; set; }
        [Indexed(Sortable = true)]

        public double AfterDiscountAverage { get; set; }

        public double TotalDiscountValue { get; set; }
        [Indexed]
        public GeoLoc Location { get; set; }

        public string Address { get; set; }

        public MediaDto RoomMedia { get; set; }

        public bool IsInstantBook { get; set; }

        public bool IsPrimeRoom { get; set; }

        public bool IsNew { get; set; }

        public int CommentsCount { get; set; }

        public bool? IncludeAroundLocations { get; set; }

        [Indexed(JsonPath = "$.DateTimeLong")]
        [Indexed(JsonPath = "$.BeforDiscountAmount")]
        [Indexed(JsonPath = "$.AfterDiscountAmount",Aggregatable = true)]
        [Indexed(JsonPath = "$.ExtraPersonPriceBeforDiscount")]
        [Indexed(JsonPath = "$.ExtraPersonPriceAfterDiscount")]
        public RoomDailyPriceCacheDto[] RoomDailyPrices { get; set; }
}
  public class RoomDailyPriceCacheDto
    {
        public  DateTimeOffset DateTime { get; set; }
        [Indexed(Sortable = true)]
        public long DateTimeLong => DateTime.Ticks;
        [Indexed(Sortable = true,Aggregatable = true)]
        public  double BeforDiscountAmount { get; set; }
        [Indexed(Sortable = true,Aggregatable = true)]

        public  double AfterDiscountAmount { get; set; }
        [Indexed(Sortable = true,Aggregatable = true)]

        public  double ExtraPersonPriceBeforDiscount { get; set; }
        [Indexed(Sortable = true,Aggregatable = true)]

        public  double ExtraPersonPriceAfterDiscount { get; set; }

        public  int PersonCapacity { get; set; }

        public  int MinNightsReserve { get; set; }
    }

My sample data is like this:
{
  "Id": "01GR0YXH8GFYMB88896GBCAEH6",
  "RoomId": 2398051,
  "RoomTypeId": "154",
  "Area": 100,
  "Floor": 2,
  "BoxCodes": [],
  "StateCode": "istanbul",
  "CityCode": "istanbul",
  "Rate": 0,
  "PersonCapacity": 2,
  "ExtraPersonCapacity": 0,
  "BedRoom": 0,
  "BedCount": 4,
  "HasDiscount": true,
  "BasePrice": 10500,
  "AveragePrice": 0,
  "AfterDiscount": 8000,
  "AfterDiscountAverage": 0,
  "TotalDiscountValue": 25,
  "Location": "29.00532,41.05806",

  "RoomDailyPrices": [
      {
      "DateTime": "2023-01-30T00:00:00+00:00",
      "DateTimeLong":<PHONE_NUMBER>,
      "BeforDiscountAmount": 100000,
      "AfterDiscountAmount": 8787789,
      "ExtraPersonPriceBeforDiscount": 0,
      "ExtraPersonPriceAfterDiscount": 0,
      "PersonCapacity": 2,
      "MinNightsReserve": 1
    },
    {
      "DateTime": "2023-01-31T00:00:00+00:00",
      "DateTimeLong":<PHONE_NUMBER>,
      "BeforDiscountAmount": 100000,
      "AfterDiscountAmount": 900000000,
      "ExtraPersonPriceBeforDiscount": 0,
      "ExtraPersonPriceAfterDiscount": 0,
      "PersonCapacity": 2,
      "MinNightsReserve": 1
    },
    {
      "DateTime": "2023-02-01T00:00:00+00:00",
      "DateTimeLong":<PHONE_NUMBER>,
      "BeforDiscountAmount": 100000,
      "AfterDiscountAmount": 100000,
      "ExtraPersonPriceBeforDiscount": 0,
      "ExtraPersonPriceAfterDiscount": 0,
      "PersonCapacity": 2,
      "MinNightsReserve": 1
    },
    {
      "DateTime": "2023-02-02T00:00:00+00:00",
      "DateTimeLong":<PHONE_NUMBER>,
      "BeforDiscountAmount": 100000,
      "AfterDiscountAmount": 100000,
      "ExtraPersonPriceBeforDiscount": 0,
      "ExtraPersonPriceAfterDiscount": 0,
      "PersonCapacity": 2,
      "MinNightsReserve": 1
    },
    {
      "DateTime": "2023-02-03T00:00:00+00:00",
      "DateTimeLong":<PHONE_NUMBER>,
      "BeforDiscountAmount": 100000,
      "AfterDiscountAmount": 100000,
      "ExtraPersonPriceBeforDiscount": 0,
      "ExtraPersonPriceAfterDiscount": 0,
      "PersonCapacity": 2,
      "MinNightsReserve": 1
    },
    {
      "DateTime": "2023-02-04T00:00:00+00:00",
      "DateTimeLong":<PHONE_NUMBER>,
      "BeforDiscountAmount": 100000,
      "AfterDiscountAmount": 100000,
      "ExtraPersonPriceBeforDiscount": 0,
      "ExtraPersonPriceAfterDiscount": 0,
      "PersonCapacity": 2,
      "MinNightsReserve": 1
    },
    {
      "DateTime": "2023-02-05T00:00:00+00:00",
      "DateTimeLong":<PHONE_NUMBER>,
      "BeforDiscountAmount": 100000,
      "AfterDiscountAmount": 100000,
      "ExtraPersonPriceBeforDiscount": 0,
      "ExtraPersonPriceAfterDiscount": 0,
      "PersonCapacity": 2,
      "MinNightsReserve": 1
    },
    {
      "DateTime": "2023-02-06T00:00:00+00:00",
      "DateTimeLong":<PHONE_NUMBER>,
      "BeforDiscountAmount": 100000,
      "AfterDiscountAmount": 100000,
      "ExtraPersonPriceBeforDiscount": 0,
      "ExtraPersonPriceAfterDiscount": 0,
      "PersonCapacity": 2,
      "MinNightsReserve": 1
    }]

Consider I have many rooms, and I want to select rooms with a specific AfterDiscountAmount average between two dates.
How can I write this query?
Thank you.

This is a feature I need to add, historically this kind of query would not have been possible, because multi-value indexes only supported tags (basically string field exact match). However with RediSearch 2.6 we can build this now, just haven't gotten to it :)

Thank you, Steve
I have a solution to my problem. I can define separate indexes for RoomDailyPrices with different prefixes, but there is something that I don't know about it.
The number of RoomDailyPrices is about a couple of 10 million keys. Do I have to worry about reindexing costs in redissearch when I delete some keys and add new keys?

Hi @imansafari1991 - there are two stages of indexing

Initial creation - when this happens. Redis will, in the background, build out your index, it will report that it's finished indexing with https://github.com/redis/redis-om-dotnet/blob/main/src/Redis.OM/RedisIndexInfo.cs#L162 - which you can get with a GetInfo. This can take a while.
As keys are added, changed, deleted - Redis will synchronously update its index for each key as it's created, deleted, or mutated. This means that there is some added overhead for your HSET/JSON.SET operations (the amount of overhead will depend on the complexity of your index).

hopefully this makes sense.

Thank you very much. This made sense to me. @slorello89


using env:list on mac sometimes does not list all variables

Describe the bug
I get a different number of results with env:list depending on the height of my terminal screen.
I have 33 environment variables for one project.  I was reviewing the values and env:list only showed 30.  I increased screen height & ran command again to receive all 33.  I made the height about half size, ran command again and only received 17.
It seems the number of variables shown depends on your screen height.  Same behavior with the terminal app and the vscode integrated terminal.
Steps to reproduce

in mac terminal or vscode create or open a project with a lot (33+) of environment variables
run ntl env:list
count how many variables are shown
lower height of terminal
run ntl env:list again
count how many variables are shown

Configuration
No response
Environment
System:
OS: macOS 12.4
CPU: (8) x64 Intel(R) Core(TM) i7-4770HQ CPU @ 2.20GHz
Memory: 114.52 MB / 16.00 GB
Shell: 3.2.57 - /bin/bash
Binaries:
Node: 16.14.2 - /usr/local/bin/node
npm: 8.5.0 - /usr/local/bin/npm
npmGlobalPackages:
netlify-cli: 10.10.2

Might be related to https://github.com/netlify/cli/issues/4656


[REQUEST] Please add 'confirm' to Init

On the main menu, please add a 'Confirm yes/no'
or 'Save current patch yes/no'  popup to Init button. Without this, it's far too easy to accidentally press Init and erase your current patch.

It has been implemented. Any other locations need that?

Might be worth adding to the delete command too


Throw if name is empty

Leaving the name empty is a frequent source of bugs and errors, since I use lambda functions, and forget to add the name field. e.g.
pure.join(scope, cloud.stack(() => ({})))

Would it be possible to create an invariant to check the name field? And even better would be if I can skip the empty lambda altogether:
pure.join(scope, cloud.stack('MyStack'))

It would remove a lot of boilerplate.

Thank you for raising this!
Unfortunately, this is a limitation of JavaScript, lambda function do not have name attribute
https://github.com/fogfish/aws-cdk-pure/blob/master/pure/src/index.ts#L60
const MyFun = (): ddb.DynamoProps => ...
pure.iaac(ddb.Dynamo)(MyFun) // the name attribute is define to `MyFun`

pure.iaac(ddb.Dynamo)((): ddb.DynamoProps => ...) // the name attribute is not defined

This is not nice, I'd like to use anonymous (lambda) functions too. It simplify the design.
The function iaac allows you to define a name but I would not recommend it (const MyFun + pure.iaac is really the same)
pure.iaac(ddb.Dynamo)((): ddb.DynamoProps => ..., 'MyFun')

Unfortunately, I do not have a perfect solution to use pure anonymous (lambda) functions. I can introduce any number of functions to lift lambda to IPure type but as I said earlier syntactically it would be same as const MyFun, e.g.
const MyFun = (): ddb.DynamoProps => ...
pure.iaac(ddb.Dynamo)(MyFun)

// vs

pure.iaac(ddb.Dynamo)(pure.lift('MyFun', (): ddb.DynamoProps => ...))

I hope I've understood your issue properly. If not could you please share code snippet with a problem.

Speaking only about this code:
export function iaac<Prop, Type>(f: Node<Prop, Type>): (pure: IaaC<Prop>, name?: string) => IPure<Type> {
  return (pure, name) => unit(
    (scope) => new f(scope, name || pure.name, pure(scope))
  )
}

Indeed, it make sense either to disable a type of anonymous function or raise exception if name is not defined to prevent bugs. I'll definably improve this block with better error handling.

I've tried to make the function input polymorphic in my code. This is my solution (WIP)
export declare function iaac<Prop, Type>(
  f: Node<Prop, Type>
): (pure: IaaC<Prop>, name?: string) => IPure<Type>;
export declare function iaac<Prop, Type>(
  f: Node<Prop, Type>
): (name: string) => IPure<Type>;
export function iaac<Prop, Type>(
  f: Node<Prop, Type>
): (...args: unknown[]) => IPure<Type> {
  return (...args) => {
    let id!: string;
    let pure: IaaC<Prop> = () => ({} as Prop);

    if (typeof args[0] === 'string') {
      if (!args[0]) {
        id = args[0];
      }
    } else if (typeof args[0] === 'function') {
      pure = args[0] as IaaC<Prop>;
    }

    if (typeof args[1] === 'string' && !args[1]) {
      id = args[1];
    }

    if (pure.name) {
      id = pure.name;
    }

    if (!id) throw new Error('Id is required.');

    return unit((scope) => new f(scope, id, pure(scope)));
  };
}

The problem I'm running into is this error:

Overload signatures must all be ambient or non-ambient.ts(2384)

This looks a bit ugly, but it would allow for a very simple end user API:
pure.join(scope, cloud.iaac(Stack)('MyStack'))

Are you trying to make a construct that takes empty (aka default properties)?
One idea, just make type (pure: IaaC<Prop>) => IPure<Type> composable.
const MyStack = cloud.iaac(Stack)
pure.join(scope, MyStack)

Are you trying to make a construct that takes empty (aka default properties)?

Yes, exactly.

Could you please clarify your usage of "empty properties"? In my life with AWS CDK, I've never used 'em? I've always needs to defined for props to resources.

The most common usecase for me is the Topic class. All the properties are optional. If you don't provide a displayName, one is generated for you. These are some of the constructs where I used empty properties:
topic
que
logGroup
fargateTaskDef
logGroup
stack


Enable attribute deprecated_in_future

This is a bit curly because of current serde logic, fixed in patch 4. All the other patches are trivial.

Well, the offender here is the SerdeHash::from_slice_delegated method right? Currently it passes through to Self::from_slice which is deprecated.
Instead we could "manually" implement this by calling <&[u8; $len]>::try_from and then converting that error to a FromSliceError. Then if that passes we can call Self::from_byte_array.
Arguably we don't even need to construct the FromSliceError because in our in-crate usage, we just throw this error away and call E::invalid_length. But this is a method in a public API that returns a FromSliceError so I guess we ought to do it properly.

@apoelstra I'm not really happy with SerdeHash. It seems to be just exposing some internal guts and it doesn't look to me like that should be even required.

Also -- win for the lint. Frustrating that this is off by default and super obscure, because this is exactly the kind of thing we'd like to notice before publishing deprecations.
@Kixunil I agree. I think this may have been a "code reuse" trait that wound up being public because of our own inter-crate visibility requirements. But it's not obvious to me that it even actually needs to be a trait.

Includes change to error message in test because we still test against error message strings in places.

Needs rebase

Refactored slightly the deserialize impl while fixing my rebase mistake.

I am going to ACK this because it lets us enable the deprecation flag. I'm not thrilled with the serde stuff (though I think it's better than the old version, since we're just exposing a couple of opaque structs, and not a whole trait). I don't have a good solution for it, and I think it's out of scope for this PR.

Rebase had conflicts with other attribute we just added, I made all the crates the same (except addresses which is missing #![doc(test(attr(warn(unused))))]).

Rebased and fixed typo in commit brief messsage s/Fully deprecated/Fully deprecate/. No other changes.

Rebased and remove OutPoint stuff because that went in already when we moved OutPoint to primitives - I think, CI will tell me if not.

And same question, do we want this in the hashes release?

Also yes -- I'll one-ack merge this since it's been sitting so long.

Needs rebase now.

Needs #3455

Rebased to pick up unrelated fix. No changes.


Update node Github wrapper

Problem:
The old github api wrapper doesn't support many new github features that would be really nice to have, such as reviews.
Do this:

Update the wrapper in this repo's package.json file to the most up to date one we can manage.
Find and fix any changed spots in git manager or models that need to be updated.

cc: @copperwall @danielbeardsley @andyg0808 @davidrans

Agreed, using a really old version of the library is getting a bit harder.

Kind of duplicate issue #79
This branch is kind of a partial attempt at that. https://github.com/iFixit/pulldasher/tree/update-github-from-pulldasher

This is implemented in https://github.com/iFixit/pulldasher/pull/138, but I'm going to close this as a duplicate of #75


Mention configuration-cache types moving to internal package in the upgrade guide

Fixes: #29351
Reviewing cheatsheet
Before merging the PR, comments starting with

❌ ❓must be fixed
🤔 💅 should be fixed
💭 may be fixed
🎉 celebrate happy things

Thanks, @lkasso, all edits accepted


Support esbuild user options in run mode

bundleOnce does not pass user supplied options to esbuild. As a result, cypress open and cypress run can have behavior discrepancy.

I have added a failing test to make sure it is working, merging now


fix: downgrade target to es2024

#220  👈 (View in Graphite)
main

This stack of pull requests is managed by Graphite. Learn more about stacking.


Fix #1583 #1582. Disallow regex now until implemented.

Signed-off-by: Ville Aikas<EMAIL_ADDRESS>
Summary
Implement glob support for ClusterImagePolicy. Supports trailing '*' only. Fixes #1582
Disallow regex until there's actually support for implementing it.
Fix incorrect error message fields. #1583

Ticket Link
Fixes: #1582
Fixed: #1583
Release Note

Codecov Report

Merging #1584 (5bf00b7) into main (c341168) will increase coverage by 0.27%.
The diff coverage is 93.22%.

@@            Coverage Diff             @@
##             main    #1584      +/-   ##
==========================================
+ Coverage   27.19%   27.46%   +0.27%
==========================================
  Files         136      137       +1
  Lines        7712     7741      +29
==========================================
+ Hits         2097     2126      +29
  Misses       5386     5386
  Partials      229      229

Impacted Files
Coverage Δ

...cosigned/v1alpha1/clusterimagepolicy_validation.go
87.23% <92.30%> (+4.37%)
:arrow_up:

pkg/apis/config/glob.go
100.00% <100.00%> (ø)

pkg/apis/config/image_policies.go
70.73% <100.00%> (-0.70%)
: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 c341168...5bf00b7. Read the comment docs.


Modified the example.txt to show more colorization in the demo.

 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.


Frontend can't decompress EU4 saves

EU4 started using a new compression format, making the frontend unable to automatically decompress saves. Either the new format should be supported, or a more clear error message should be added instead.

To decompress files, one should rename it to ".zip", open the archive and find there the savefile proper. Has it changed?

That is the change - I believe the frontend used to decompress automatically or at least give a slightly more informative error message.

@kratostatic Nailed it: the frontend tries to do it automatically for you, but it no longer works in newer EU4 patches. When I first looked at the error message everyone asks about in the forums, I saw that it looks like a library call. I'll dig more into this issue.

You mentioned this was done on the forum?

Yes, I did. I don't know why I forgot to close the issue while I was at it.


Ant-schematron : using XML Catalog with "doctyped" xml files

Hi,

I ran "google.code.schematron\trunk\ant-schematron\test\ant\build.xml" with
target "ant test-resolver-1"

Everything is fine from the original declared target :
<!-- Resolver -->
<target name="test-resolver-1" description="Simple test">
    <taskdef name="schematron" classname="com.schematron.ant.SchematronTask" classpath="../lib/*.jar"/>
    <schematron schema="../schemas/test.sch" file="../xml/test1.xml" failonerror="false"
    debugmode="true"  resolver="org.apache.xml.resolver.tools.CatalogResolver"

    classpath="../lib/resolver.jar"
    catalog="xxx.xml"

    fileNameParameter="XXX"  fileDirParameter="ABC"/>
</target>

but this target defines an non existent catalog (xxx.xml).

SO I defined a catalog.xml file which contains :
<public publicId="-//DOG//EN"
uri="file:///C:/google.code.schematron/trunk/ant-schematron/test/ant/dog.dtd"/>

It points to dod.dtd with absolute uri (file is located at the same level as
the build.xml file).

See attached files.

I then added the following doctype to test1.xml :
<!DOCTYPE Dog PUBLIC "-//DOG//EN" "dog.dtd">

And when running "ant test-resolver-1"
I get the following error :
test-resolver-1:
[schematron] Error
[schematron] java.io.FileNotFoundException:
[schematron] C:\google.code.schematron\trunk\ant-schematron\test\xml\dog.dtd
[schematron] DEBUG: error
[schematron] Could not validate document
C:\google.code.schematron\trunk\ant-sche
xml\test1.xml
[schematron] java.io.FileNotFoundException:
C:\google.code.schematron\trunk\ant-s
st\xml\dog.dtd (Le fichier spécifié est introuvable)
BUILD FAILED

It seems dog.dtd file is being searched in "../xml" folder, which indicates the
catalog resolver didn't work.

In oXygen, I added the catalog.xml files in catalog list, and I can
successfully validate test1.xml.
Note that I need to add catalog/@prefer="public" in catalog.xml so it works.

Configuration :

* OS : windows 7 Pro

* JAVA : java version "1.6.0_20"

* ANT : Apache Ant(TM) version 1.8.2 compiled on December 20 2010
(I define ANT_HOME variable)

* SCHEMATRON : I get the whole test files from mercurial repo on 2011-08-30,
the ant-schematron/test/lib folder contains :
ant-schematron.jar
resolver.jar
saxon8.jar
saxon9.jar
saxon9.jar.old
saxon9he.jar

* SAXON : saxon9he.jar is in my CLASSPATH. If not I get an ANT error message.
Version is : Saxon-HE <IP_ADDRESS>J from Saxonica

I know saxon need a few options to be fixed so it work with a catalog :

-r "Use URIResolver class" has to be set to
"org.apache.xml.resolver.tools.CatalogResolver" which seems to be parameted by
schematron/@resolver attribute

But also :
-x "Use specified SAX parser for source" has to be set to
"file:org.apache.xml.resolver.tools.ResolvingXMLReader"

-y "Use specified SAX parser for stylesheet" also has to be set to
"file:org.apache.xml.resolver.tools.ResolvingXMLReader"

But I don't see any attributes to set these parameters in the pdf doc  ("Using
Schematron for Ant.pdf").
By the way, in this PDF, i think there is a mistake at parameter
"xml.catalog.files" which should be "catalog" (attribute to schematron element)

Any help welcome !
(maybe I should post this on another place, but I can't find where ?)

Best Regards,
Matthieu

Original issue reported on code.google.com by<EMAIL_ADDRESS>on 1 Sep 2011 at 9:53
Attachments:

build.xml
catalog.xml
dog.dtd
test1.xml

Moved to Schematron/ant-schematron#4.


Dialog: fire events when the dom can be interacted with

The show event does not indicate when the element is actually visible for interaction. The new event is useful for functionality such as autofocus on async elements in dialogs

👍

LGTM


all the input array dimensions except for the concatenation axis must match exactly when running FinRL_PortfolioOptimizationEnv_Demo with CAC40 Data

I wanted to run FinRL_PortfolioOptimizationEnv_Demo  and changing the Data source to the CAC40 here:
But unfortunately I got an error when using the method train_model of DRLAgent:
ValueError                                Traceback (most recent call last)
<ipython-input-50-63f854a52e04> in <cell line: 1>()
----> 1 DRLAgent.train_model(model, episodes=40)

4 frames

/usr/local/lib/python3.10/dist-packages/finrl/agents/portfolio_optimization/models.py in train_model(model, episodes)
     78             An instance of the trained model.
     79         """
---> 80         model.train(episodes)
     81         return model
     82

/usr/local/lib/python3.10/dist-packages/finrl/agents/portfolio_optimization/algorithms.py in train(self, episodes)
    118
    119                 # run simulation step
--> 120                 next_obs, reward, done, info = self.train_env.step(action)
    121
    122                 # add experience to replay buffer

/usr/local/lib/python3.10/dist-packages/finrl/meta/env_portfolio_optimization/env_portfolio_optimization.py in step(self, actions)
    301             # load next state
    302             self._time_index += 1
--> 303             self._state, self._info = self._get_state_and_info_from_time_index(
    304                 self._time_index
    305             )

/usr/local/lib/python3.10/dist-packages/finrl/meta/env_portfolio_optimization/env_portfolio_optimization.py in _get_state_and_info_from_time_index(self, time_index)
    454             tic_data = tic_data[self._features].to_numpy().T
    455             tic_data = tic_data[..., np.newaxis]
--> 456
    457             state = tic_data if state is None else np.append(state, tic_data, axis=2)
    458         state = state.transpose((0, 2, 1))

/usr/local/lib/python3.10/dist-packages/numpy/lib/function_base.py in append(arr, values, axis)
   5615             arr = arr.ravel()
   5616         values = ravel(values)
-> 5617         axis = arr.ndim-1
   5618     return concatenate((arr, values), axis=axis)
   5619

ValueError: all the input array dimensions except for the concatenation axis must match exactly, but along dimension 1, the array at index 0 has size 49 and the array at index 1 has size 50```

I found my problem and it raised another underlying issue. I will start by explaining my problem and its resolution, then I will raise a problem related to data processing by FeatureEngineer (or not).
My problem was that when YahooDownloader downloaded the data, there were certain dates for which there was no data. This absence of data did not result in empty data (NAN) but in the absence of a row for a given date. This, when grouped by date, resulted in 49 data points instead of 50.
Solution:
def clean_data( data):
        df = data.copy()
        df = df.sort_values(["date", "tic"], ignore_index=True)
        df.index = df.date.factorize()[0]
        merged_closes = df.pivot_table(index="date", columns="tic", values="close")
        empty_lines= merged_closes[merged_closes.isnull().any(axis=1)]
        date_list = list(empty_lines.index)
        df_clean = df[~df['date'].isin(date_list)]

        return df_clean

During my investigation, I also tried to run the Stock_NeurIPS2018_2_Train.ipynb file with CAC40 data and encountered another type of error, but once again related to the data.
When FeatureEngineer processes the data, it executes this code to clean the data:
def clean_data(self, data):
        """
        clean the raw data
        deal with missing values
        reasons: stocks could be delisted, not incorporated at the time step
        :param data: (df) pandas dataframe
        :return: (df) pandas dataframe
        """
        df = data.copy()
        df = df.sort_values(["date", "tic"], ignore_index=True)
        df.index = df.date.factorize()[0]
        merged_closes = df.pivot_table(index="date", columns="tic", values="close")
        merged_closes = merged_closes.dropna(axis=1)
        tics = merged_closes.columns
        df = df[df.tic.isin(tics)]
        # df = data.copy()
        # list_ticker = df["tic"].unique().tolist()
        # only apply to daily level data, need to fix for minute level
        # list_date = list(pd.date_range(df['date'].min(),df['date'].max()).astype(str))
        # combination = list(itertools.product(list_date,list_ticker))

        # df_full = pd.DataFrame(combination,columns=["date","tic"]).merge(df,on=["date","tic"],how="left")
        # df_full = df_full[df_full['date'].isin(df['date'])]
        # df_full = df_full.sort_values(['date','tic'])
        # df_full = df_full.fillna(0)
        return df

This will delete all tickers for which there is not all the data for each date. That is, if a single data point is missing for a single date, it will delete all data related to that ticker.
I am not familiar with the entire project, which is why I ask the question: why not modify it to delete only the rows that do not have all the data (as in my code above) rather than all the data related to the ticker?
I have time and, having already investigated the subject, I am willing to make the necessary changes, but I am aware that this may have impacts that I am unaware of on the viability of the model or other aspects.


SizeFlags enum is missing value

Godot version
3.4.1, 4.0
System information
Windows 10
Issue description
SizeFlags enum is missing a default "none" value of 0. Definitely in C#, possibly in Godot Classic.

This is a problem especially when making tools that need to expose size flags of containing nodes.
Since the dropdown options only include what is available in the enum, if exposing a sizeflag, "Fill" is the default value, and "None" is not selectable.

Steps to reproduce
N/A
Minimal reproduction project
No response

The engine itself doesn't have any name bound to 0, but that will be addressed by https://github.com/godotengine/godot/pull/55630.
For the record, the 0 value is not "none", it's "Shrink Begin"

Interesting. I looked through the code and saw where "Shrink_Begin" is added. Will this new feature work with exports?
Anyway, should I close this or wait until #55630 is merged?

Will this new feature work with exports?

Sure, it's an exposed value on an exposed enum.

Anyway, should I close this or wait until #55630 is merged?

We can keep this open for now, as a reminder. I can also make a dedicated PR that touches on that if that bigger one takes too long.


Valgrind command not found

The new run-test bash script seems to fail on travis-ci because of Valgrind!

For some reason Travis updated your /bin/run-test but not the .travis.yml. Not entirely sure why yet, but we'll fix it along with your PR #123


[fix][fn] Align WindowContext with BaseContext

Fixes #23629

Main Issue: #xyz

PIP: #xyz

Motivation

Modifications

Verifying this change

[x] Make sure that the change passes the CI checks.

[x] This change is already covered by existing tests, such as (please describe tests).

[x] org.apache.pulsar.tests.integration.functions.java.testTumblingCountWindowTest
[x] org.apache.pulsar.tests.integration.functions.java.testSlidingCountWindowTest

Does this pull request potentially affect one of the following parts:

If the box was checked, please highlight the changes

[ ] Dependencies (add or upgrade a dependency)
[ ] The public API
[ ] The schema
[ ] The default values of configurations
[ ] The threading model
[ ] The binary protocol
[ ] The REST endpoints
[ ] The admin CLI options
[ ] The metrics
[ ] Anything that affects deployment

Documentation

[ ] doc
[ ] doc-required
[x] doc-not-needed
[ ] doc-complete

Matching PR in forked repository
PR in forked repository: https://github.com/jiangpengcheng/pulsar/pull/35

Codecov Report
Attention: Patch coverage is 0% with 15 lines in your changes missing coverage. Please review.

Project coverage is 74.33%. Comparing base (bbc6224) to head (552f538).
Report is 743 commits behind head on master.

Files with missing lines
Patch %
Lines

.../pulsar/functions/windowing/WindowContextImpl.java
0.00%
15 Missing :warning:

Additional details and impacted files

@@             Coverage Diff              @@
##             master   #23628      +/-   ##
============================================
+ Coverage     73.57%   74.33%   +0.76%
- Complexity    32624    34981    +2357
============================================
  Files          1877     1944      +67
  Lines        139502   147201    +7699
  Branches      15299    16239     +940
============================================
+ Hits         102638   109429    +6791
- Misses        28908    29305     +397
- Partials       7956     8467     +511

Flag
Coverage Δ

inttests
27.28% <0.00%> (+2.70%)
:arrow_up:

systests
24.37% <0.00%> (+0.04%)
:arrow_up:

unittests
73.72% <0.00%> (+0.87%)
:arrow_up:

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

Files with missing lines
Coverage Δ

.../pulsar/functions/windowing/WindowContextImpl.java
7.14% <0.00%> (-3.97%)
:arrow_down:

... and 662 files with indirect coverage changes

----
🚨 Try these New Features:

Flaky Tests Detection - Detect and resolve failed and flaky tests
JS Bundle Analysis - Avoid shipping oversized bundles

/pulsarbot rerun-failure-checks

@shibd @jiangpengcheng @Technoboy- This is a breaking change and shouldn't be cherry-picked. Existing compiled classes will have to be recompiled. This change breaks binary compatibility although source compatibility is retained.

@jiangpengcheng Please respond. Since this is a breaking change, I think that we need a PIP for this so that we have properly documented a breaking change. There could also be ways to make the change in a way that it doesn't break binary compatibility.

@lhotari sorry for the trouble, so now should I create a PIP for this one or:

revert his PR
create a PIP, discuss and vote
and then re-submit this PR ?

@lhotari sorry for the trouble, so now should I create a PIP for this one or:

revert his PR
create a PIP, discuss and vote

@jiangpengcheng Makes sense. The need for the PIP is due to the change in a public interface. However creating a PIP isn't useful alone since in this case, it will require experimentation to find an optimal solution. An optimal solution would be one which doesn't introduce breaking changes in binary compatibility or source compatibility.

and then re-submit this PR ?

Most likely we need a slightly different solution than this PR.
A solution should be sought where binary compatibility could be preserved. For checking binary compatibility, it would be useful to have an integration test where a function compiled for a previous version is run with the master branch version. Since adding the test could be a lot of work, the first step would be to perform this checking manually and having a test case available at least in some branch to find a solution where binary compatibility would be preserved.
It's possible that the solution for preserving binary compatibility is simply one where methods don't get removed from the WindowContext interface and it's simply modified to extend BaseContext interface. I might also be wrong that binary compatibility is broken in the changes that this PR introduces. That needs to be validated in any case, since it's hard to know the corner cases of binary compatibility just by analyzing source code.

Validating compatibility seems like a significant effort. What if this PR doesn’t need to be cherry-picked to older branches and is only merged into the master branch? Would creating a PIP and resubmitting the PR suffice?

Validating compatibility seems like a significant effort. What if this PR doesn’t need to be cherry-picked to older branches and is only merged into the master branch? Would creating a PIP and resubmitting the PR suffice?

@jiangpengcheng  It's not a significant effort. You simply have a function jar using one of the moved methods in WindowContext and have it compiled with a previous version of Pulsar. You then run this with the master branch version of Pulsar. The first step of this is to do this test manually. The required effort is around 10 to 20 minutes.
I don't think it's justified to break binary compatibility when there's a chance to preserve it.

@lhotari  ok, I thought we need to add integration tests to the CI
I just verified it with below steps:

checkout pulsar to previous version (eddf395631811a731fe9c0284b44fd2f6efd2026)
update the LoggingWindowFunction like below:

package org.apache.pulsar.functions.api.examples.window;

import java.util.Collection;
import org.apache.pulsar.functions.api.Record;
import org.apache.pulsar.functions.api.WindowContext;
import org.apache.pulsar.functions.api.WindowFunction;
import org.slf4j.Logger;

/**
 * A function that demonstrates how to redirect logging to a topic.
 * In this particular example, for every input string, the function
 * does some logging. If --logTopic topic is specified, these log statements
 * end up in that specified pulsar topic.
 */
public class LoggingWindowFunction implements WindowFunction<String, Void> {

    @Override
    public Void process(Collection<Record<String>> inputs, WindowContext context) throws Exception {
        Logger log = context.getLogger();
        log.info("tenant: {}, namespace: {}, instanceId: {}, replicas: {}", context.getTenant(), context.getNamespace(),
                context.getInstanceId(), context.getNumInstances());
        for (Record<String> record : inputs) {
            log.info(record + "-window-log");
        }
        return null;
    }
}

build the pulsar-functions/java-examples project, it generated a --jar pulsar-functions/java-examples/target/pulsar-functions-api-examples.jar
checkout pulsar to master (7909d2dfdb4aad8053c133ce6a00d5dddf0b9db8)
start the pulsar locally:

./bin/pulsar standalone

create the window function

./bin/pulsar-admin functions create --tenant public --namespace default --name window-function --className org.apache.pulsar.functions.api.examples.window.LoggingWindowFunction --inputs persistent://public/default/test-window-input --output persistent://public/default/test-window-output --log-topic persistent://public/default/test-window-logs --jar pulsar-functions/java-examples/target/pulsar-functions-api-examples.jar --cpu 0.1 --window-length-count 10 --sliding-interval-count 5

produce 5 messages to the input topic:

./bin/pulsar-client produce -m "test-message" --value-schema string -n 5 persistent://public/default/test-window-input

consume from the log topic:

./bin/pulsar-client consume -n 0 -s mysub --subscription-position Earliest persistent://public/default/test-window-logs

the function works correctly and I got expected messages from the log topic:

----- got message -----
key:[null], properties:[fqn=public/default/window-function, instance=0, loglevel=INFO], content:Window Config: WindowConfig(windowLengthCount=10, windowLengthDurationMs=null, slidingIntervalCount=5, slidingIntervalDurationMs=null, lateDataTopic=null, maxLagMs=null, watermarkEmitIntervalMs=null, timestampExtractorClassName=null, actualWindowFunctionClassName=org.apache.pulsar.functions.api.examples.window.LoggingWindowFunction, processingGuarantees=ATLEAST_ONCE)
----- got message -----
key:[null], properties:[fqn=public/default/window-function, instance=0, loglevel=INFO], content:tenant: public, namespace: default, instanceId: 0, replicas: 1
----- got message -----
key:[null], properties:[fqn=public/default/window-function, instance=0, loglevel=INFO], content:org.apache.pulsar.functions.source.PulsarFunctionRecord@32afdbf6-window-log
----- got message -----
key:[null], properties:[fqn=public/default/window-function, instance=0, loglevel=INFO], content:org.apache.pulsar.functions.source.PulsarFunctionRecord@467cda10-window-log
----- got message -----
key:[null], properties:[fqn=public/default/window-function, instance=0, loglevel=INFO], content:org.apache.pulsar.functions.source.PulsarFunctionRecord@3e25cfb6-window-log
----- got message -----
key:[null], properties:[fqn=public/default/window-function, instance=0, loglevel=INFO], content:org.apache.pulsar.functions.source.PulsarFunctionRecord@3997d10c-window-log
----- got message -----
key:[null], properties:[fqn=public/default/window-function, instance=0, loglevel=INFO], content:org.apache.pulsar.functions.source.PulsarFunctionRecord@752bcda3-window-log
----- got message -----
key:[null], properties:[fqn=public/default/window-function, instance=0, loglevel=INFO], content:[persistent://public/default/test-window-input] [public/default/window-function] [ef1db] Prefetched messages: 0 --- Consume throughput received: 0.08 msgs/s --- 0.00 Mbit/s --- Ack sent rate: 0.08 ack/s --- Failed messages: 0 --- batch messages: 0 ---Failed acks: 0
----- got message -----
key:[null], properties:[fqn=public/default/window-function, instance=0, loglevel=INFO], content:[persistent://public/default/test-window-logs] [standalone-23-1] --- Publish throughput: 0.12 msg/s --- 0.00 Mbit/s --- Latency: med: 117.000 ms - 95pct: 117.000 ms - 99pct: 117.000 ms - 99.9pct: 117.000 ms - max: 117.000 ms --- BatchSize: med: 6.000 - 95pct: 6.000 - 99pct: 6.000 - 99.9pct: 6.000 - max: 6.000 --- MsgSize: med: 437.000 bytes - 95pct: 437.000 bytes - 99pct: 437.000 bytes - 99.9pct: 437.000 bytes - max: 437.000 bytes --- Ack received rate: 0.12 ack/s --- Failed messages: 0 --- Pending messages: 1
2024-11-26T12:54:54,980+0000 [pulsar-timer-16-1] INFO  org.apache.pulsar.client.impl.ConsumerStatsRecorderImpl - [persistent://public/default/test-window-logs] [mysub] [9415c] Prefetched messages: 0 --- Consume throughput received: 0.15 msgs/s --- 0.00 Mbit/s --- Ack sent rate: 0.15 ack/s --- Failed messages: 0 --- batch messages: 0 ---Failed acks: 0

I just verified it with below steps:

@jiangpengcheng thanks for checking. It seems that my concerns about breaking binary compatibility don't apply. We don't need to revert this change. It would be useful to have a PIP to document that this change was made in the public interface.

The reasons why this is binary compatible seems to be related to these points described in Java Language Specification about binary compatibility:

Inserting new class or interface types in the type hierarchy. (BaseContext was inserted)
Moving a method upward in the class hierarchy. (methods were moved from WindowContext to BaseContext)

@lhotari many thx for the explain! I will create a PIP for. this change

Hi @lhotari, here is the follow-up PIP: https://github.com/apache/pulsar/pull/23659, PTAL when you have time


fix(ffe-form-react): Make classnames a dependency

This commit makes classnames a direct dependency, and not a
dev dependency like it was.
Fixes #232

Coverage remained the same at 79.991% when pulling 931ffce653b9e2b8b2d6846a373aa8d909f96d49 on 232-make-classnames-a-dependency into d549e1abc3f3ebd49e7b0a17a614157795dabeed on develop.


can not save remote file

Does this issue occur when all extensions are disabled?: Yes/No

VS Code Version:1.70.2
OS Version:Ubuntu20

Steps to Reproduce:

This generally indicates being out of disk space.

We closed this issue because we don't plan to address it in the foreseeable future. If you disagree and feel that this issue is crucial: we are happy to listen and to reconsider.
If you wonder what we are up to, please see our roadmap and issue reporting guidelines.
Thanks for your understanding, and happy coding!


Re-use a ByteBuffer to read bytes from Input

Reading objects like Strings in Java causes a lot of garbage that can easily cause
large application to suffer from unnecessarily long GCs.
This patch allows for the usage of an externally maintained ByteBuffer to be filled
from the input, so developers can have the freedom to maintain ThreadLocal instances
of that ByteBuffer for example and re-use it, avoiding unnecessary allocations.

Multiple files need formatting changes (brackets on a newline).
If you're ok with this change @kshchepanovskyi, then it should be in 1.6.x due to changes in core api.

I have fixed all the bracket issues I came across.
@dyu What is the timeline for a 1.6.x release?

@tsheasha it should be within a day or two right after the PR lands unless @kshchepanovskyi has extra things to add for 1.6.x

thanks @dyu and I also managed to fix the other missed newlines, I should have used my 'C' formatter ;)

We have to support injection of ByteBuffer in this case, because it has a slice() method.
Basically, we can avoid copying large byte arrays if we can have something like this:
class Example {
@Tag(1)
private ByteBuffer referenceWithNoCopy;
}
In this case during deserialization we will only inject a slice of source ByteBuffer. It is important for large byte array payloads.
Second option is to add support of ByteBuf from Netty-Buffer 4x. It is amazing abstraction of ByteBuffer.

I pushed a final patch to be able to write directly from the classes implementing output to utilize the CharSequence indirection

We ended up seeing some regressions in performance and exceptions as well,
so I will duplicate all the methods to use a StringBuilder as well as the String

Wow, it's  huge! :) I hope you are not breaking anything guys. Please make sure new code is covered by unit tests. I will do a code review on this or next week. Once everything is good, I will make a release.

@dyu I'm not doing anything for the library right now, lately I'm more focused on https://github.com/protostuff/protobuf-jetbrains-plugin. I have 50k downloads already!
P.S. About long-term things - I had few things in mind, but @dyu you would not like them, as they includes removal of :

protostuff-runtime (from my experience, general-purpose serialization for POJOs is not something that fits into protobuf/json),
LinkedBuffer (in favor of netty's ByteBuf as @alexshvid mentioned),
tons of other code in the repository, like protostuff-kvp.

For my project I need a library that can work efficiently with Netty 4, do proto2/proto3/json serialization + it has to work with generated code only.

@tsheasha I see that we have two things in this pull request:

Add new methods for java.nio.ByteBuffer reuse.
Add new methods for working with StringBuilder.

I will discard this PR, please split your changes into two different PRs, so that we can review them separately and make sure there are no problems with backward compatibility or other issues.
About second change - CharSequence and mentioned by @dyu performance penalty due to indirection - let's check it again. As for me, adding duplicate methods just to avoid small performance penalty before JIT processes bytecode is not worth it. Let's continue this discussion in second PR, when we will see results of benchmarks.

@kshchepanovskyi sure, I pushed the 1st PR now for Byte buffer reuse https://github.com/protostuff/protostuff/pull/215

@kshchepanovskyi Second pull request is also sent: https://github.com/protostuff/protostuff/pull/216


  Any other input results in the same error.
 It works sometimes.
alias fuck='eval $(thefuck $(fc -ln -1));'


Supervised Contrastive Learning with n_views=1

Hello,
First, thank you for this paper and code!
I want to adapt you approach to use Supervised Contrastive Learning after a regional proposal network.
In this context, I was wondering, as it's not explicitly said in the paper: what are your exact motivations for including two views of the images in each batch?
From my understanding/intuition, it's to ensure that the anchor is exposed to a "decent"/minimum number of positive samples, is that right?
Thank you!

My understanding is that to make sure that there exist positives in the multiviewed batch, otherwise, the numerator in the loss formula (Eq. 2/3) would be 0.


No security policy

Hello @uchu. I am doing the review for your project on CRDAO and your repository does not include a Security Policy, which is needed for the review to pass. Can you prepare one?

Sure, will update it later today. Is there any specific format that is approved as a standard now?
Sent from ProtonMail mobile
-------- Original Message --------
On Jun 19, 2022, 7:16 PM, Gökhan Gurbetoğlu wrote:

Hello @.***(https://github.com/uchu). I am doing the review for your project on CRDAO and your repository does not include a Security Policy, which is needed as per guidelines. Can you prepare one?
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you were mentioned.Message ID: @.***>

You can just use GitHub's template to create one. Be sure to include how people could reach out to you.
Also, can you add me on Telegram @ggurbet so we can test the bot?

Sounds good. Will add it. I will be back to my laptop in a couple of hours and will contact you on telegram. Thanks a lot for working on the review
Sent from ProtonMail mobile
-------- Original Message --------
On Jun 19, 2022, 7:27 PM, Gökhan Gurbetoğlu wrote:

You can just use GitHub's template to create one. Be sure to include how people could reach out to you.
Also, can you message me on Telegram @.***(https://t.me/ggurbet) so we can test the bot?
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you were mentioned.Message ID: @.***>

Added it.


Get rid of parsers-megaparsec

It not maintained and keeps dependencies outdated.

radixtree depend on Parsec.
Either
get rid of radixtree (swap it with another one)
or
fork and  base radixtree on megaparsec
or
fork (or make PR) and update parsers-megaparsec

To complete the task it wanted to swap Radixtree's search to lookup.
search gives parsing of dirty strings, e.g.
> parseWylieInput radix "(balka)"
> parseWylieInput radix "(balkana)"
ExceptT (Identity (Right [([],[["balka"]])]))

it reads radixed words and drops non-radixed in anyway.
Therefore dirty wylie text should parsed better beforehand.
There are two approaches

Add non-wylie chars and strings to sillabies
and then parse (1.balka) -> ["(", "1", "." "balka", ")"]
and then it become "(1.བལྐ)" or "(༡.བལྐ)", etc...
Parse dirty text by separating non-wylie stuff from wylie
and then map lookupLemient, lookupLemient left non-wylie untouched
and convert wylie to tibetan script.

lookupLenient :: RadixTree a -> Text -> Text
lookupLenient radix t = case lookup radix t of
  Nothing -> t
  Just (t',_) -> t'

> map (lookupLenient radix) ["(", "balka", ")"]
["(","balka",")"]

In both 1 and 2 a dirty text must be separated roughly,
hence first approach has no advantages,
and it is better to keep syllabies non-wylie-free
therefore second approach is right choice.
Steps of realization:

Reduce current transforming to flat list.
Some texts won't be consumed, and be dropped.
Refactor current parsers to more correct separation against flat list.


Keep player data on disconnect for a certain amount of time

If player disconnects, the player data should remain (and probably be marked as "disconnected") for about 30 seconds or so.
If a user then connects and has the same login cookie (anonymous users are irrelevant here), he can be assigned to this playerData and rejoin a game.
This would require all games to have either a constant client data refreshing or a new method onPlayerReconnects, that updates this player with the current information to allow them to resume the gameplay.

was implemented with a new (optional) method for game developers: onPlayerReconnects(eventData: {user: User})


My Page initial commit

What's that? I haven't used my github for a while.
On Sat, Jan 22, 2022 at 5:09 AM Tyler887 @.***> wrote:

stop vandalising the project @cuix-github https://github.com/cuix-github
—
Reply to this email directly, view it on GitHub
https://github.com/pages-themes/slate/pull/16#issuecomment-1019155061,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AC6MY23LILSS24W5CR46HODUXJ66HANCNFSM4DXXB5KA
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you were mentioned.Message ID:
@.***>


Better seeding for Random (addresses #65)

This PR addresses #65.

CI failure appears to be a network outage and thus unrelated.

this shared random is then passed directly, which would be unsafe if an async context results in a thread jump

I don't see the issue. If there's a thread jump then the Random instance associated with that thread will be used.

this shared random is then passed directly, which would be unsafe if an async context results in a thread jump

I don't see the issue. If there's a thread jump then the Random instance associated with that thread will be used.

If Random is invoked in thread T1 but the result enumerated in thread T2, then the ThreadRandom instance of T1 is used in T2, because RandomImpl will capture the passed Random instance from T1.
This change will make it required to enumerate from the same thread that the enumerable was created. Previously, it was only required that the enumerable was only enumerated by a single thread at a time.

If Random is invoked in thread T1 but the result enumerated in thread T2, then the ThreadRandom instance of T1 is used in T2, because RandomImpl will capture the passed Random instance from T1.

Oh man, you're totally spot on and good catch!  Silly me that the very problem I set out to solve ended up rearing its ugly head via the closure. 👹

@fsateler In 172629953d44b15ddc78f2fdd143ee3893dda048, I've taken another approach. Fortunately, not only is Random open to sub-classing but all its NextXXX methods are also virtual. I used that to create a singleton implementation that internally uses thread-local Random instances. So while the global is still captured, each call into the various NextXXX methods uses the Random of the thread at the time of each iteration.
Let me know what new blunders I've created. 😄

Fortunately, not only is Random open to sub-classing but all its NextXXX methods are also virtual. I used that to create a singleton implementation that internally uses thread-local Random instances.

This is avoids this problem. However, by potentially using different Random objects while enumerating, the distribution of random numbers might not have the properties expected of a Random (uniform distribution is probably the most important). I have no idea how much the distribution could change.
Is this a problem worth worrying about? The conditions under which this problem would arise are not common (constant thread-jumping while enumerating a single sequence).

Is this a problem worth worrying about? The conditions under which this problem would arise are not common (constant thread-jumping while enumerating a single sequence).

@fsateler You raise a fair concern but I feel @stephentoub put it best:

If I really cared about the quality of the numbers, I would use RNGCryptoServieProvider.  I’m just trying to escape the hazards of getting back all 0s, or having all of the threads seeing the exact same numbers.  This is a fair compromise if the statistical properties beyond that aren’t that important.

@atifaziz Right, I agree for most users this will not be an issue. Maybe it is only necessary to add a remark to the documentation for the relevant overloads?

@fsateler What do you think of this?
        /// <remarks>
        /// The implementation internally uses a thread-local instance of
        /// <see cref="System.Random" /> to generate a random number on each
        /// iteration. The actual <see cref="System.Random" /> instance used
        /// therefore will depend on the thread on which a single iteration is
        /// taking place; that is the call to
        /// <see cref="System.Collections.IEnumerator.MoveNext()" />. If the
        /// overall iteration takes place on different threads (e.g.
        /// asynchronous await completing on different threads) then various
        /// different <see cref="System.Random" /> instances will be involved
        /// in the generation of the sequence of random numbers.
        /// </remarks>

@atifaziz Looks good to me, modulo a minor nit. I'd also note that the thread-local instance is shared among enumerables in the same thread:
        /// <remarks>
        /// The implementation internally uses a shared, thread-local instance of
        /// <see cref="System.Random" /> to generate a random number on each
        /// iteration. The actual <see cref="System.Random" /> instance used
        /// therefore will depend on the thread on which a single iteration is
        /// taking place; that is the call to
        /// <see cref="System.Collections.IEnumerator.MoveNext()" />. If the
        /// overall iteration takes place on different threads (e.g.
        /// via asynchronous awaits completing on different threads) then various
        /// different <see cref="System.Random" /> instances will be involved
        /// in the generation of the sequence of random numbers. Because the
        /// <see cref="System.Random" /> instance is shared, if multiple sequences
        /// are generated in the same thread, the order of enumeration affects the
        /// resulting sequences.
        /// </remarks>


Support for Typescript

It is impossible to use this library with Typescript. It would be nice if it generated types for typescript as well, or better yet was rewritten for Typescript :D

How would the usage in Flow project be if it was written in Typescript?

too bad as most of the react projects are using typescript..

We will eventually support TypeScript, it's not just priority for now - our consumers still heavily use Flow.

There are actually internal typings which could be published to DefinitelyTyped @vepor . Please ask the Balkan team.

I convert the project to typescript and use this in our company project
you can see temp version here:  https://github.com/straxico/react-strix/tree/master/src/Components/Atoms

@fallion I already know about that 🙂 but there won't be time at least until the end of 2019. Hopefully we manage to support Typescript fully in first quarter

It's bonkers to me that this project is so well developed but still doesn't have typings available. Would be a huge help to publish those internal typings.

@vepor any update on this 🙏

Typescript definitions released in 0.85.0
https://github.com/kiwicom/orbit-components/releases/tag/0.85.0


Implement SQLite into code to store, save and receive data

In #12, a wrapper for the SQLite database was added.
Now an implementation for the wrapper is required

isn't this #14?


no unicode

https://eldood.uk/010b75c2d3

Fixed in https://github.com/jes/eldood/commit/dfdba63ff3c5b52b21b0e1c03430f1b72784b25f
Thank you!

Can confirm it works, thank you!


New UI features

New UIFeature flags + tests for verji-develop

We aim to have a green board for the checks before we merge.
So:

Take care of adding an appropriate label to the PR
Fix failing test
Fix linting errors

New UIFeature flags for CreateRoom, UserInfo, RoomList and Homepage
Create room
As we want our users to only create Private encrypted rooms, ve wish to have some of the options in create room encapsuled by UIFeatureflags. This way we can ensure that all rooms are private, encrypted and not public and knockable.
CreateRoomE2eeSection = "UIFeature.createRoomE2eeSection",
CreateRoomShowJoinRuleDropdown = "UIFeature.createRoomShowJoinRuleDropdown",
CreateRoomShowAdvancedSettings = "UIFeature.createRoomShowAdvancedSettings",
UserInfo
As our customers are using Element/Verji for business purposes, we want to restrict the users to delete (redact) messages, and to share the link to other users, to prevent unwanted/uninvited people into rooms.
UserInfoVerifyDevice = "UIFeature.userInfoVerifyDevice",
UserInfoShareLinkToUserButton = "UIFeature.userInfoShareLinkToUserButton",
UserInfoRedactButton = "UIFeature.userInfoRedactButton",
Homepage
We would like to hide the 3 buttons from the HomePage behind an UIFeature flag, to prevent our users to have multiple ways of doing things.
HomePageButtons = "UIFeature.homePageButtons",
RoomList
When creating a new room from the Roomlist, 2 choices appear, New Room and Explore public rooms. As we dont use public rooms, we would like to hide the option behind a feature flag.
RoomListExplorePublicRooms = "UIFeature.roomListExplorePublicRooms",
In this way we, and possible others, take benefit of not manually handle these changes inhouse on a later stage.


options支持自定义样式名，参数为className字段，支持数组和字符串

解决选项需要高亮或者置灰等样式个性化需求
Please make sure these boxes are checked before submitting your PR, thank you!

[ ] Make sure you follow Element's contributing guide (中文 | English | Español).
[ ] Make sure you are merging your commits to dev branch.
[ ] Add some descriptions and refer relative issues for you PR.

解决选项需要高亮或者置灰等样式个性化需求

解决选项需要高亮或者置灰等样式个性化需求


Fix the bug in member implementation of 'flip' (static version is fine)

Also fix tests of static versions of remove/add/flip to check the result of operations.

fixes #122

Changes Unknown when pulling 70148be2c11afa4ab4e3e0c072ef07788ecac489 on akazakov:master into ** on RoaringBitmap:master**.

Looks good. Thanks for catching this. Merging.
c.c. @owenkaser


Moving GlWindow to a different Thread

I created a GlWindow on the main thread and specified the shared lists of the Context Builder to be the Context of my main window. Then I moved that window into another Thread and tried to make it current.
The call to make_current() failed with the Error: "other os error". I need a current Context on the Thread to fill up some Buffers and I can't create the GlWindow on the thread since the lifetime of the refrence to the main window is to short. When I do the same thing in C++ with GLFW it works.
Is this behavior desired or has anybody some experience with using a shared Context on a diffrent Thread with glutin?
Thank you in advance.

You need to maintain a 1 to 1 mapping between threads and Gl contexts. If you want to use a context from a separate thread, you need to unbind it from the first thread first.

And how do I remove that binding
This is the code...
`
let context = glutin::ContextBuilder::new()
.with_gl(glutin::GlRequest::Latest)
.with_shared_lists(window.context());
let mut events_loop = glutin::EventsLoop::new();
let window = glutin::WindowBuilder::new()
.with_visibility(false)
.with_dimensions(1, 1);
        let gl_window = glutin::GlWindow::new(window, context, &events_loop).unwrap();

        let handle = thread::spawn(move || {

            unsafe {
                if let Err(error) = gl_window.make_current() {
                    info!("Make Context Current Error: {}", error);
                }
                gl::load_with(|s| gl_window.get_proc_address(s) as *const _);
            }
       }

`

Err, yes glutin doesn't have an option to unbind a context unfortunately.

https://github.com/tomaka/glutin/issues/784


Add initial scaffolding for default bucket (take 2)

@tgroh, could you please take a look?

Provide a hook for determining the project number associated with a bucket
Provide an API for looking up the project number from a project ID

Re-opened because the other PR wasn't clearing the extra commit history, despite the branch being correct.

Method renamed, all ready to go.

Merging

Thanks for fixing the git history.
Compared this with a copy I made in lukecwik/incubator-beam:finish-pr-1014 and it looked the same.
Merging


Add remote model server support

also, r u able to put a description in the commit like how to enable the feature.


Ensure rspec retry formatter closes the IO stream used to report flakey specs

Context
We cat the contents of the rspec retry log, this is a File object passed to the relevant RSpec formatter.
RSpec::Core::Formatters::BaseTextFormatter does not explicitly close the IO stream.
We think cat may hang on some builds as the IO stream is not explicitly closed.
Paired with @JR-G on this

Changes proposed in this pull request
Subclass RSpec::Core::Formatters::BaseTextFormatter and explicitly close the IO stream.

Guidance to review
We've subclassed in spec_helper.rb, are we bad people?

Link to Trello card

Things to check

[x] If the code removes any existing feature flags, a data migration has also been added to delete the entry from the database
[x] This code does not rely on migrations in the same Pull Request
[x] If this code includes a migration adding or changing columns, it also backfills existing records for consistency
[x] API release notes have been updated if necessary
[x] Required environment variables have been updated added to the Azure KeyVault

This wasn't the underlying issue. The GC closes open files, this was an issue with the amount of test failure output. Closing.


fix: workaround doc build needing to build crypto

Benchmark results
Metrics with a significant change:

note_trial_decrypting_time_in_ms (8): 4.38 (-95%)
note_trial_decrypting_time_in_ms (32): 11.1 (-86%)

Detailed results
All benchmarks are run on txs on the Benchmarking contract on the repository. Each tx consists of a batch call  to create_note and increment_balance, which guarantees that each tx has a private call, a nested private call, a public call, and a nested public call, as well as an emitted private note, an unencrypted log, and public storage read and write.
This benchmark source data is available in JSON format on S3 here.
Values are compared against data from master at commit 23d1e2d3 and shown if the difference exceeds 1%.
L2 block published to L1
Each column represents the number of txs on an L2 block published to L1.

Metric
8 txs
32 txs
128 txs

l1_rollup_calldata_size_in_bytes
45,444
179,588
716,132

l1_rollup_calldata_gas
223,008
867,896
3,448,040

l1_rollup_execution_gas
842,095
3,595,004
22,203,409

l2_block_processing_time_in_ms
2,017 (+3%)
7,612 (+1%)
29,953 (+1%)

note_successful_decrypting_time_in_ms
302 (+3%)
901 (+3%)
3,282 (+4%)

note_trial_decrypting_time_in_ms
:warning: 4.38 (-95%)
:warning: 11.1 (-86%)
134 (-15%)

l2_block_building_time_in_ms
20,676 (+1%)
82,200 (+1%)
328,996 (+1%)

l2_block_rollup_simulation_time_in_ms
11,942
47,551 (+1%)
189,043 (+1%)

l2_block_public_tx_process_time_in_ms
8,689 (+1%)
34,517 (+1%)
139,455 (+2%)

L2 chain processing
Each column represents the number of blocks on the L2 chain where each block has 16 txs.

Metric
5 blocks
10 blocks

node_history_sync_time_in_ms
21,572 (-2%)
42,301

note_history_successful_decrypting_time_in_ms
2,022
3,948

note_history_trial_decrypting_time_in_ms
122 (+1%)
145 (+1%)

node_database_size_in_bytes
1,631,245
1,098,839

pxe_database_size_in_bytes
29,748
59,307

Circuits stats
Stats on running time and I/O sizes collected for every circuit run across all benchmarks.

Circuit
circuit_simulation_time_in_ms
circuit_input_size_in_bytes
circuit_output_size_in_bytes

private-kernel-init
767 (+1%)
61,697
18,905

private-kernel-ordering
126 (+1%)
24,297
8,153

base-rollup
1,768
656,428
873

root-rollup
172 (+2%)
4,072
1,097

private-kernel-inner
793 (+1%)
81,568
18,905

public-kernel-private-input
571 (+1%)
41,519
18,905

public-kernel-non-first-iteration
408 (+1%)
41,561
18,905

merge-rollup
15.2 (+1%)
2,592
873

Miscellaneous
Transaction sizes based on how many contracts are deployed in the tx.

Metric
0 deployed contracts
1 deployed contracts

tx_size_in_bytes
8,787
27,547


updated to 0.3.9

Copied the latest package.nix from unstable and updated hashes etc.
Not sure if you want this...

Thank you!


Air corridor graphics do not display properly on WW Map.

-Create mil stnd
-Go to Tactical graphics
-Go to Command and control / Aviation /Lines / All graphics under lines
On WW map they appear partially.

There is no support for air corridor graphics  in WW. The engine is defaulting to using a surface polyline.

This issue relates to the following issue in WebWorldWind:
https://github.com/NASAWorldWind/WebWorldWind/issues/135


Ensure sync-agent up before adding replica

I noticed that if we do the add replica before the sync agent is up, it results in unnecessary adds and removes of replicas to the controller which was also generating lots of snapshot on the good replica

LGTM.


needed to copy netcdf_translate.sh to dir after file_sort

the instructions did not mention that netcdf_translate.sh is needed in directory or error 'file not found'

netcdf_translate.sh was not designed to be called directly, but is to be called by batch_translate.sh. As such, instructions were not included for its use.
Using and modifying batch_translate.sh to fit your purpose should alleviate this issue.

@calvin-curtin It was not called by me. It was called by batch_translate but could not be found so I had to go and figure out why.  It would be kinder to the user to instruct the proper way that it should be configured and minimise unclear warnings about "file not found"  thanks

Script leaves the code folder and loses the netcdf_translate.sh file.
Solution grab code folder before cd

Issue should be closed. The script should end with cd - to return to the calling subdirectory.


multiclass object detection

Hi there,
Is there any config file for multiclass object detection?

We will provide  multiclass object detection in NuScenes dataset using tanet soon. In fact, on KITTI, we train two-class  object detection  at the same time. Or you can refer the config of SEONDhttps://github.com/traveller59/second.pytorch/blob/master/second/configs/all.fhd.config

@jaylee7   We will provide  multiclass object detection in NuScenes dataset using tanet soon. In fact, on KITTI, we train two-class  object detection  at the same time. Or you can refer the config of SEONDhttps://github.com/traveller59/second.pytorch/blob/master/second/configs/all.fhd.config

@jaylee7 We will provide multiclass object detection in NuScenes dataset using tanet soon. In fact, on KITTI, we train two-class object detection at the same time. Or you can refer the config of SECONDhttps://github.com/traveller59/second.pytorch/blob/master/second/configs/all.fhd.config

@jaylee7 We will provide multiclass object detection in NuScenes dataset using tanet soon. In fact, on KITTI, we train two-class object detection at the same time. Or you can refer the config of SECOND [https://github.com/traveller59/second.pytorch/blob/master/second/configs/all.fhd.config]

@jaylee7 We will provide multiclass object detection in NuScenes dataset using tanet soon. In fact, on KITTI, we train two-class object detection at the same time. Or you can refer the config of SECOND https://github.com/traveller59/second.pytorch/blob/master/second/configs/all.fhd.config

@jaylee7 We will provide multiclass object detection in NuScenes dataset using tanet soon. In fact, on KITTI, we train two-class object detection at the same time. Or you can refer the config of SECOND all.fhd.config


the speed of training

it's very slow while training the face detection,what can i do to speed up the training? the main reason for this is the pkl ，not rec for mxnet？

@huanpig pkl format is much faster than rec of mxnet. pkl files are loaded into the memory, avoiding hard disk IO. The speed is determined by factors: 1) jpg decode speed (cv2 with turbo-jpeg); 2) the image size and the input size; 3) the average number of objects in input images (for loops).
So the CPU performance matters.

in article,you say:We train
1,500,000 iterations and reduce the learning rate by multiplying 0.1 at iteration 600,000, 1,000,000, 1,200,000 and
1,400,000. The training time is about 5 days with two
NVIDIA GTX1080TI, in my thought,it's very slow, is it uner normal circumstances?

@YonghaoHe

@huanpig indeed, the training speed is not fast. The data preparation is slow. The training speed is about 50 images/s.


Implement math functions in tools.xmath

We have to  implement all tools.xmath functions necessary to run EvoLife. In future they should detect argument's types and generate optimized code for them. But right now, let consider we have either integer or single precision float as inputs. Then, implement a basic functionality that just works, without any optimizations. The list of functions to be added to 0.2:

[x] min()
[x] max()
[x] int()
[x] float()

The list is not complete and would be changed in the process. The idea is to keep it as short as possible. Only functions we really need for the current tasks. I.e. we have no use for trigonometry in 0.2, so they are off for now.

All necessary functions for EvoLife are imlemented.


README: link packages in opensuse

Packages exist since version 1.0.0, time to link them :)

Awesome, thanks! I had no idea logzero was in the openSUSE repo.

I merged this PR and then went to try it out in Docker with openSUSE 42.2, but I can't seem to install the packages:
# zypper install python2-logzero
Loading repository data...
Reading installed packages...
'python2-logzero' not found in package names. Trying capabilities.
No provider of 'python2-logzero' found.

@sebix what am I missing?


Rule proposal: no-empty-line-separating-import

This is stylistic rule. I often see import statements separated one from another using arbitrary rules, e.g.
import yargs from 'yargs';
import getStdin from 'get-stdin';

import {
    lintFiles,
    lintText
} from './../../utilities';

import {
    failHandler,
    getTargetPaths,
    outputReport
} from './../../utilities/bin';

This rule would enforce no spacing between import statements, i.e.
import yargs from 'yargs';
import getStdin from 'get-stdin';
import {
    lintFiles,
    lintText
} from './../../utilities';
import {
    failHandler,
    getTargetPaths,
    outputReport
} from './../../utilities/bin';

Just a heads up: if you want to implement + PR these, I'm more than willing to accept them, but I don't have a lot of time ATM and the style-guide rules are lower priority than getting ready for ESLint 2, infrastructure, etc.

@benmosher maybe rename max-empty-line-separating-import with option number?

It's a but of a hack, but you can configure the order rule to do the wanted behavior.

I'm cool either way. Seems reasonable to assume that intent to use a rule like this implies desire to use order.

That assumption is incorrect - I do not want ordering but do want imports grouped with no newlines.

I agree, https://github.com/benmosher/eslint-plugin-import/blob/master/docs/rules/order.md#newlines-between-ignorealwaysalways-an d-inside-groupsnever lets ignore the newlines-between option, but not the group one

@benmosher @ljharb Is this issue still open to take up? I don't see any PR created for this rule, so I was hoping to take a shot at implementing this if it's something useful to have 😅
For starters, I'm thinking of going through the code for newlines-between option (especially the never value that can be passed) of the order rule to understand how to avoid empty lines between imports. I'm also looking to play around with the AST Explorer to get an idea about the implementation.
Though, I'll need some input from your end to get some clarity on the implementation as well as what options we could configure for this rule 😅

@Devansu-Yadav yup! no PR yet. altho let's make sure we're on the same page about implementation first.

@Devansu-Yadav yup! no PR yet. altho let's make sure we're on the same page about implementation first.

Sure, absolutely!

@Devansu-Yadav yup! no PR yet. altho let's make sure we're on the same page about implementation first.

@ljharb Any updates on how I should be proceeding with the implementation?

What schema did you have in mind?

What schema did you have in mind?

As this rule mostly deals with having no newlines between import statements, having a count option to count the no of newlines wouldn't make sense here. Do we want an option like groups defined in the order rule to enforce no newlines inside specified groups of import statements but ignore newlines between different import groups? This would work exactly like always value for the newlines-between option defined in the order rule. The only difference in having the groups option here for this rule would be that it would have a default value of [], meaning that we wouldn't have any import groups specified by default.
I'm not sure if it would be useful to only enforce no newlines inside import groups using the groups option 😅. What do you think?
I'm also thinking about whether we should have an option like considerComments to group together comments along with imports without any newline or it would deviate the purpose of this rule.
I'm open to any suggestions for the schema we should have for this rule.

What schema did you have in mind?

As this rule mostly deals with having no newlines between import statements, having a count option to count the no of newlines wouldn't make sense here. Do we want an option like groups defined in the order rule to enforce no newlines inside specified groups of import statements but ignore newlines between different import groups? This would work exactly like always value for the newlines-between option defined in the order rule. The only difference in having the groups option here for this rule would be that it would have a default value of [], meaning that we wouldn't have any import groups specified by default.
I'm not sure if it would be useful to only enforce no newlines inside import groups using the groups option 😅. What do you think?
I'm also thinking about whether we should have an option like considerComments to group together comments along with imports without any newline or it would deviate the purpose of this rule. I'm open to any suggestions for the schema we should have for this rule.

Any thoughts on this? @ljharb

I thought I would weigh in on this one - I would love if this were part of the order rule.
I see a couple of potential options:

The newlines-between option could be modified to allow a numeric value
Another property could be added (spacing-between: number?), which would only be used when newlines-between has a value of always' or 'always-and-inside-groups


Update youku to <IP_ADDRESS>52

After making all changes to the cask:

[x] brew cask audit --download {{cask_file}} is error-free.
[x] brew cask style --fix {{cask_file}} left no offenses.
[x] The commit message includes the cask’s name and version.

Thank you for your contribution.