synchronize schema spec

What
APM agent json schema automatic sync
Why
Changeset

https://github.com/elastic/apm-server/commit/4457e3243 Map RUM PerformanceResourceTiming fields (https://github.com/elastic/apm-server/pull/9429)

:broken_heart: Build Failed

the below badges are clickable and redirect to their specific view in the CI or DOCS

Expand to view the summary

Build stats

Start Time: 2022-10-25T07:11:46.352+0000

Duration: 20 min 17 sec

Test stats :test_tube:

Test
Results

Failed
0

Passed
3691

Skipped
3353

Total
7044

Steps errors
Expand to view the steps failures

Install python3:3.7

Took 0 min 18 sec . View more details here
Description: null

Install python3:3.7

Took 0 min 9 sec . View more details here
Description: null

Install python3:3.7

Took 0 min 10 sec . View more details here
Description: null

Install python3:3.8

Took 0 min 17 sec . View more details here
Description: null

Install python3:3.8

Took 0 min 9 sec . View more details here
Description: null

Install python3:3.8

Took 0 min 9 sec . View more details here
Description: null

Install python3:3.9

Took 0 min 17 sec . View more details here
Description: null

Archive the artifacts

Took 0 min 0 sec . View more details here
Description: [2022-10-25T07:32:00.574Z] Archiving artifacts
hudson.AbortException: script returned exit code 1

Error signal

Took 0 min 0 sec . View more details here
Description: hudson.AbortException: script returned exit code 1

:green_heart: Flaky test report
Tests succeeded.
:robot: GitHub comments
Expand to view the GitHub comments

To re-run your PR in the CI, just comment with:

/test : Re-trigger the build.

/test linters : Run the Python linters only.

/test full : Run the full matrix of tests.

/test benchmark : Run the APM Agent Python benchmarks tests.

run elasticsearch-ci/docs : Re-trigger the docs validation. (use unformatted text in the comment!)

:globe_with_meridians: Coverage report

Name
Metrics % (covered/total)
Diff

Packages
100.0% (68/68)
:green_heart:

Files
100.0% (229/229)
:green_heart:

Classes
100.0% (229/229)
:green_heart:

Lines
91.029% (18153/19942)
:grey_exclamation:

Conditionals
74.571% (2824/3787)
:grey_exclamation:


Plural name of urls

issue #8 resolved
Plural name of urls in admin section (i.e. urlss to urls)

I have removed whitespaces and squashed commits.
Kindly review it.


Support for Synology Nas or Docker?

I love this utility.  It's very simple and fills a huge need of being able to accept email from our different types of printers and relaying it over oauth.  What I would like to see is if you all could come up with a way for this utility to run under a Synology NAS as an App/Package or maybe under a docker container so that it can run from the Synology NAS.

Thanks for the suggestions (and the kind words). I can't help with Synology Nas, but there is a Docker example here that is kindly maintained by an external contributor. This and more are linked at the end of the proxy's readme.


Serialise bytes as base64 strings instead of arrays.

Description
Instead of serialising an array of bytes, encode that array to a base64 string and serialise it as a string instead.
Testing
Added tests to check the output of the serialisation.

Codecov Report

Merging #1608 (3b18908) into main (5945dbf) will increase coverage by 0.04%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##             main    #1608      +/-   ##
==========================================
+ Coverage   93.75%   93.80%   +0.04%
==========================================
  Files         251      252       +1
  Lines       46278    46419     +141
==========================================
+ Hits        43388    43543     +155
+ Misses       2890     2876      -14

Impacted Files
Coverage Δ

src/schema/value.rs
67.39% <100.00%> (+5.86%)
:arrow_up:

src/indexer/sorted_doc_id_multivalue_column.rs
95.00% <0.00%> (-0.59%)
:arrow_down:

src/fastfield/multivalued/writer.rs
98.34% <0.00%> (-0.03%)
:arrow_down:

src/indexer/merger.rs
98.82% <0.00%> (-0.01%)
:arrow_down:

src/reader/mod.rs
93.63% <0.00%> (ø)

src/schema/mod.rs
100.00% <0.00%> (ø)

src/indexer/mod.rs
100.00% <0.00%> (ø)

src/schema/text_options.rs
100.00% <0.00%> (ø)

src/fastfield/serializer/mod.rs
100.00% <0.00%> (ø)

src/core/inverted_index_reader.rs
72.86% <0.00%> (ø)

... and 7 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


[BUG] Method expected for parameters object in a path object

Describe the bug
Method wrongly expected for parameters: in oas-file.
To Reproduce
Steps to reproduce the behaviour:

Create new oas-file.yaml which contains a route parameterised. Such as foo/{bar}.
Populate the route with an HTTP method (GET, POST, etc.)
Add a block to your route with parameter specification.
Also create a dummy controller named foobar with a dummy method named doStuff

foo/{bar}:
  x-router-controller: foobar
  get:
    operationId: doStuff
  parameters:
    - name: bar
      in: path
      schema:
        type: string
        enum:
          - baz
          - qux
      required: true

When running you should get an error saying ~ ... does not have method funcfoobar
If you then comment out the parameters object the application should start.
Expected behavior
the parameters block in the yaml should not be treated as a HTTP method. Thus oas-tools should not expect parameters to be bound to any method in the associated controller, whether default named or specified with x-router-controller

After a little bit of research, a potential solution could be to only apply the method check for relevant fixed fields found in a path object (see https://spec.openapis.org/oas/v3.1.0#fixed-fields-6).
This would include:
get
put
post
delete
options
head
patch
trace

The other field names in a path object are not Operation Objects

Hello, thanks for the report. Just as you commented, the operation objects were not being filtered, resulting in the exception you found.
I added a filter for the Operation Objects that you've found in the OpenAPI docs and it now initializes without a problem. I also added a couple of lines to merge path-level and operation-level parameteres in order to avoid errors caused by any of them being undefined.
Thus, a new version has been released solving this issue. Please run npm update in your project (Consider using the @oas-tools/core package instead of oas-tools since this last one has been deprecated han will not receive new updates).
Feel free to ask any question in GitHub Discussions and review the new version's docs.


getitem bug

from functorch import vmap
import torch
def f(x):
    return torch.ones(4)[x]

y = torch.arange(2)
print(vmap(f)(y))

We probably are going to want to rewrite PyTorch's advanced indexing to get this to work...

Workaround here is to do torch.ones(4)[x[None]][0]

Closing as duplicate of #747

any updates on this?


Set up Docker environment

WHY
To run risu as Docker container
WHAT
Add files to build & run risu in Docker environment

LGTM :eyes:


Revise "confirmation rate" language in the network indicator

Description
Used firefly beta wallet.
Its shows 101 % confirmation rate which in any case could not be true.
The calculation for confirmation rate is faulty, it cannot be more than 100%  whatever may be the criteria, which i assume is part of wallet.rs and firefly just shows the data.
Impact
Proof of Concept
download firefly beta wallet and create a new wallet and click on network status

Open feedback (optional)
Use this section to add any feedback related to the submission:

@saurabhtukul So would you propose just hard-limiting the rate (in Firefly) at 100% as to not confuse the user? Another alternative I can think of is a tooltip explaining this, however I'm leaning towards hard-limiting at 100% personally.


FRAME Weights with Storage Metadata

Results of running benchmarks on: https://github.com/paritytech/substrate/pull/9373

Added a #[skip_meta] tag to hide storage metadata comments for items where lots of random keys are touched.
Introduced external-repeat flag to do repeats from the client, although tests show that running it in the runtime gives better results.
Moved components loop out of the runtime, so the runtime truly just executes the benchmarks.
Use LinkedHashMap for tracking storage keys so the order is consistent

System benchmarks probably need to be updated

/benchmark runtime pallet frame_system

/benchmark runtime pallet pallet_contracts

/benchmark runtime pallet pallet_democracy

/benchmark runtime pallet pallet_bounties

/benchmark runtime pallet pallet_bounties

/benchmark runtime pallet pallet_democracy

/benchmark runtime pallet pallet_democracy

/benchmark runtime pallet pallet_democracy

/benchmark runtime pallet pallet_democracy

/benchmark runtime pallet pallet_bounties

/benchmark runtime pallet pallet_bounties

/benchmark runtime pallet pallet_election_provider_multi_phase

bot merge


BPNL Validation function evaluates the same way for EQ and isAllOf operators

Describe the bug
Using the isAllOf operator in a policy, the validation fails if a BPNL belongs to more groups than the ones specified in the policy.
In the BPNL validation extension, the validation function evaluates the EQ and the isAllOf operators in the same way, however even the documentation states they should evaluate the groups differently, as shown in the expected behaviour.
Also, in the BusinessPartnerGroupFunctionTest class, the following circumstance is tested:
 Arguments.of("Overlapping groups", IS_ALL_OF, List.of(TEST_GROUP_1, TEST_GROUP_2, "different-group", "another-different-group"), false)
And being TEST_GROUP_1 and TEST_GROUP_2 part of the allowed groups, this case should return true and not false
Expected behavior
Operator EQ: must be exactly in - and only in - that particular group or set of groups
Operator IS_ALL_OF: must be in all of the specified groups

Can I assign this issue to me? @ndr-brt @rafaelmag110

Please have a look at: https://github.com/eclipse-tractusx/sig-release/issues/775#issuecomment-2242235805, there is an additional issue with operators

Issue was solved on the following Pull Request: https://github.com/eclipse-tractusx/tractusx-edc/pull/1456


it is not showing

Issue Type: Bug
go live option is not showing
Extension version: 5.7.1
VS Code version: Code 1.63.2 (899d46d82c4c95423fb7e10e68eba52050e30ba3, 2021-12-15T09:40:02.816Z)
OS version: Windows_NT x64 10.0.18362
Restricted Mode: No

System Info

Item
Value

CPUs
Intel(R) Core(TM) i3-10100F CPU @ 3.60GHz (8 x 3600)

GPU Status
2d_canvas: enabledgpu_compositing: enabledmultiple_raster_threads: enabled_onoop_rasterization: enabledopengl: enabled_onrasterization: enabledskia_renderer: enabled_onvideo_decode: enabledvulkan: disabled_offwebgl: enabledwebgl2: enabled

Load (avg)
undefined

Memory (System)
15.91GB (12.66GB free)

Process Argv
--crash-reporter-id 922d57d6-ff87-4d75-821d-4500b7812f01

Screen Reader
no

VM
0%

A/B Experiments
vsliv368:30146709
vsreu685:30147344
python383cf:30185419
vspor879:30202332
vspor708:30202333
vspor363:30204092
pythonvspyl392:30422343
pythontb:30283811
pythonvspyt551cf:30345471
pythonptprofiler:30281270
vsdfh931:30280409
vshan820:30294714
vstes263:30335439
vscorecescf:30384386
pythondataviewer:30285071
vscod805:30301674
pythonvspyt200:30340761
binariesv615:30325510
bridge0708:30335490
bridge0723:30353136
vsaa593cf:30376535
vsc1dsc:30424895
pythonvs932:30410667
vscop804:30404766
vscop453:30404998
vsrem710:30416614

Do you have HTML/CSS/SVG files in your folder?
Activation events are changed due to performance reasons.
https://github.com/ritwickdey/vscode-live-server/commit/620738b3cf3bfbd6d3f2ba255290db1f3a1c4bfd
BTW, You can right-click to an HTML file and choose open with live server

As far as I'm concerned the button shows up only if I open an html or css file. If the session starts on a js file for example, the button is absent.

yup @anthon38, you're right.  there is a small bug.
https://github.com/ritwickdey/vscode-live-server/blob/620738b3cf3bfbd6d3f2ba255290db1f3a1c4bfd/package.json#L35
It should be onLanguage:javascript
Fixing right now. Thanks @anthon38

Published to vscode marketplace. Pls upgrade to the latest version and let me know.
For now, I'm closing the issue.


Broken link for schematic T-SIM767XG-S3

The link at https://github.com/Xinyuan-LilyGO/LilyGO-T-A76XX/blob/main/schematic/T-SIM7672-S3-V1.0.pdf  is broken.

https://github.com/Xinyuan-LilyGO/LilyGO-T-A76XX/blob/main/schematic/T-SIM767X-S3-V1.0.pdf


structural typing allowed in typescript breaks python users

Describe the bug
See https://github.com/aws/aws-cdk/pull/27284
export class A extends B {
  public static create(): A {
    return super.create(); // returns type B
  }
}

export interface AProp {
  readonly aProp: A;
}

In TypeScript, this works because of structural typing, TS understands that B can be cast to A. However, in the jsii-generated Python, this is not the case and the following error is recorded:
TypeError: type of argument aProp must be one of (module.A); got
module.B instead

Expected Behavior
Since Python cannot handle structural typing, the expected behavior is that jsii returns an error and disallows this.
Current Behavior
Jsii allows this, resulting in a runtime error in Python
Reproduction Steps
Create code similar to the example above where TS relies on structural typing to ensure that type B is valid type A. Then build the python package and run it.
Possible Solution
No response
Additional Information/Context
No response
SDK version used
n/a
Environment details (OS name and version, etc.)
n/a

It's not just Python. This won't work in any nominally typed language (Java or C#) either.
Also cannot be fixed, since we can't detect this happening on the TS side.


Testing game from 2nd monitor crash

I have a 3 monitor setup on my iMac:
iMac itself, Cintiq, and another monitor.
When I start the Godot editor, and drag the window to a different monitor, then press Play icon on top to test my game, the game crashes immediately:
Exception Type:        EXC_BAD_ACCESS (SIGSEGV)
Exception Codes:       KERN_INVALID_ADDRESS at 0x0000000063614d2f

If I drag the editor window back to the first monitor, and launch the game - it works fine.

Looks similar to #2216

Same problem on my Macbook Air with external monitor. Run Godot on macbook monitor is OK. Run on external monitor it crash.


wagtail.contrib.forms causes database issues

Issue Summary
Using wagtail.contrib.forms seems to interact with the database in unprecedented ways and by that blocks certain command flows.
I use django-extensions' reset_db command and migrate in a custom management command called bootstrap. It looks something along the lines of the following:
class Command(BaseCommand):

    def handle(self, *args, **options):
            call_command('reset_db', noinput=True, interactive=False)
            self.stdout.write(
                self.style.SUCCESS('Successfully reset database.'))

        call_command('migrate')
        self.stdout.write(self.style.SUCCESS('Successfully ran migrations.'))

As soon as I started using the forms app this failed with either:
/lib/python3.7/site-packages/django/db/backends/sqlite3/base.py", line 413, in execute
    return Database.Cursor.execute(self, query, params)
django.db.utils.OperationalError: Problem installing fixture '...': Could not load auth.User(pk=1): attempt to write a readonly database

for the local SQLite database or
File "/usr/local/lib/python3.7/site-packages/django_extensions/management/commands/reset_db.py", line 175, in handle
remote:            cursor.execute(drop_query)
remote:        psycopg2.errors.ObjectInUse: database "db_test_ftb_jansen_de" is being accessed by other users
remote:        DETAIL:  There is 1 other session using the database.

for the production PostgreSQL database and I couldn't figure out why. Though disabling the wagtail.contrib.forms app (and my custom ones that were relying on it) made the issue disappear.
When debugging today I found out that the culprit is here:
https://github.com/wagtail/wagtail/blob/30b90a0f6563d0aa385f9b717f67a489450c377d/wagtail/contrib/forms/models.py#L166-L174
Overriding AbstractFormField._migrate_legacy_clean_name like so
@classmethod
    def _migrate_legacy_clean_name(cls):
        return None

also makes the issue disappear.
I know that is a very special case but since I spent some time debugging this I wanted to see if there is a more sophisticated fix or even one that can be made upstream?

Hi @matthiasrohmer,
Presumably this is happening because the system check in wagtail.contrib.forms is performing a database operation, and postgres/sqlite won't let you drop the database once the running command has made a connection to it. If so, I think the solution would be to set requires_system_checks = False on your command class.
This does raise the question of whether Wagtail is breaking a Django convention or policy by making a database connection inside a system check... I'm not aware of any rule against it, but if there is one, then I'd be open to reviewing this and looking for alternative ways of making this system check work.

I'm not saying this should or shouldn't be changed, just adding my 2 cents: I'm running into a similar problem, I can work around it but it feels a bit wrong.
My scenario: when running python manage.py makemigrations I normally switch to the Dummy database: this prevents issues under certain conditions in my setup, and makemigrations is completely database-independent so it shouldn't matter. Except that now Wagtail tries to use the DB which triggers a crash.
Because I use Django's standard management command I can't actually use requires_system_checks = False. I'll switch to SQLite for now.
$ python manage.py makemigrations

Traceback (most recent call last):
  File "/x/y/project-with-wagtail/website/manage.py", line 10, in <module>
    execute_from_command_line(sys.argv)
  File "/x/y/project-with-wagtail/virtual/lib/python3.8/site-packages/django/core/management/__init__.py", line 419, in execute_from_command_line
    utility.execute()
  File "/x/y/project-with-wagtail/virtual/lib/python3.8/site-packages/django/core/management/__init__.py", line 413, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/x/y/project-with-wagtail/virtual/lib/python3.8/site-packages/django/core/management/base.py", line 354, in run_from_argv
    self.execute(*args, **cmd_options)
  File "/x/y/project-with-wagtail/virtual/lib/python3.8/site-packages/django/core/management/base.py", line 393, in execute
    self.check()
  File "/x/y/project-with-wagtail/virtual/lib/python3.8/site-packages/django/core/management/base.py", line 419, in check
    all_issues = checks.run_checks(
  File "/x/y/project-with-wagtail/virtual/lib/python3.8/site-packages/django/core/checks/registry.py", line 76, in run_checks
    new_errors = check(app_configs=app_configs, databases=databases)
  File "/x/y/project-with-wagtail/virtual/lib/python3.8/site-packages/django/core/checks/model_checks.py", line 34, in check_all_models
    errors.extend(model.check(**kwargs))
  File "/x/y/project-with-wagtail/virtual/lib/python3.8/site-packages/wagtail/contrib/forms/models.py", line 170, in check
    messages = cls._migrate_legacy_clean_name()
  File "/x/y/project-with-wagtail/virtual/lib/python3.8/site-packages/wagtail/contrib/forms/models.py", line 143, in _migrate_legacy_clean_name
    if objects.count() == 0:
  File "/x/y/project-with-wagtail/virtual/lib/python3.8/site-packages/django/db/models/query.py", line 412, in count
    return self.query.get_count(using=self.db)
  File "/x/y/project-with-wagtail/virtual/lib/python3.8/site-packages/django/db/models/sql/query.py", line 519, in get_count
    number = obj.get_aggregation(using, ['__count'])['__count']
  File "/x/y/project-with-wagtail/virtual/lib/python3.8/site-packages/django/db/models/sql/query.py", line 504, in get_aggregation
    result = compiler.execute_sql(SINGLE)
  File "/x/y/project-with-wagtail/virtual/lib/python3.8/site-packages/django/db/models/sql/compiler.py", line 1162, in execute_sql
    sql, params = self.as_sql()
  File "/x/y/project-with-wagtail/virtual/lib/python3.8/site-packages/django/db/models/sql/compiler.py", line 527, in as_sql
    from_, f_params = self.get_from_clause()
  File "/x/y/project-with-wagtail/virtual/lib/python3.8/site-packages/django/db/models/sql/compiler.py", line 806, in get_from_clause
    clause_sql, clause_params = self.compile(from_clause)
  File "/x/y/project-with-wagtail/virtual/lib/python3.8/site-packages/django/db/models/sql/compiler.py", line 445, in compile
    sql, params = node.as_sql(self, self.connection)
  File "/x/y/project-with-wagtail/virtual/lib/python3.8/site-packages/django/db/models/sql/datastructures.py", line 168, in as_sql
    base_sql = compiler.quote_name_unless_alias(self.table_name)
  File "/x/y/project-with-wagtail/virtual/lib/python3.8/site-packages/django/db/models/sql/compiler.py", line 436, in quote_name_unless_alias
    r = self.connection.ops.quote_name(name)
  File "/x/y/project-with-wagtail/virtual/lib/python3.8/site-packages/django/db/backends/dummy/base.py", line 20, in complain
    raise ImproperlyConfigured("settings.DATABASES is improperly configured. "
django.core.exceptions.ImproperlyConfigured: settings.DATABASES is improperly configured. Please supply the ENGINE value. Check settings documentation for more details.


Bump version to 0.3.6

@bors-servo r=asajeffrey

:pushpin: Commit a22ba04 has been approved by asajeffrey

:hourglass: Testing commit a22ba04 with merge 2163ab9...

:sunny: Test successful - travis


This is not SECURE....

anyone can see the raw data of the response, they just need a URL.. which is quite easy to guess.

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

ID: 08e12671-466a-8807-63bb-fb1923554d60
Version Independent ID: 88dcdcb5-e611-134d-5c2e-66c657416445
Content: Compare Azure messaging services - Azure Event Grid
Content Source: articles/event-grid/compare-messaging-services.md
Service: event-grid
GitHub Login: @spelluru
Microsoft Alias: spelluru

Thank you for your feedback! We will review and update as appropriate.

@JWEthernet - could you please give us more details about the issue? I am looking at the article you commented on and I can't figure out what the issue is about. Thanks in advance.

Hi @JWEthernet Since this channel is for driving improvements toward MS Docs and we didn't determine any changes to documentation upon reviewing this feedback, we will now proceed to close this issue for now. If there are further questions regarding this matter, please reopen this issue and we will gladly continue the discussion.


Accept searches with "IETF RFC XXXX"

Otherwise it only works with "RFC XXXX"

I can accept these, but they're actually beside the point: all rfcbib references are meant to be wrapped as IETF(RFC nnnn), and this ends up licensing IETF(IETF RFC nnnn), which noone will write. I'll change relaton as well, so it allows both prefix(x), and prefix x.

Actually, no. If I strip IETF from IETF RFC nnnn, I have to strip ISO from ISO 639, and ISO TR 5, which is lunacy. The syntax is like it is for a reason: it is unambiguous. IETF RFC 8000 is now inconsistent with relaton syntax.

The reason I made the patch is that the RFCBib gem crashes when I gave it “IETF RFC XXXX”. The change in search syntax affects all Metanorma document; we ought not to crash if Relaton doesn’t understand the search syntax, and it really should be more or less backwards compatible with the old syntax.
People are actually using Metanorma (and hence the Relaton search syntax, which is a new thing), we can’t expect everyone to know how to convert the references and doing it manually. I didn’t even know this is related — the document was doing fine until I ran bundle update!

In addition, we should be parsing the “XXXX” part of “RFC XXXX”, make sense of it first, before we fetch the URL. And any failure in fetching should not crash the gem. Yesterday it had an URL with a space in it and the HTTP class raised an error, which RFCBib did not catch and it crashed the whole chain.

And I did add the warning if the URL was not recognised if the document was neither I-D nor RFC. It's not robust code :-(
This sounds like I should detect whether the URL exists before fetching it and processing it. I'm making a ticket; please add to it the issues you're seeing.


Make workspace configurable for jdtls.

This PR affects only Eclipse JDTLS and introduces no breaking changes.
It adds the ability to specify the workspace directory path used by the JDTLS server through the MultilspyConfig class:
class MultilspyConfig:
    ...
    ws_path: Path = None
    temp_workspace: bool = False
    ...

By default, the ws_path property is None, and Eclipse JDTLS creates a new workspace for the current project. If the temp_workspace config property is set to false, Eclipse JDTLS will register the new workspace and associate it with the current project. This association is persisted in a file named ws_table in the Eclipse JDTLS directory.
Upon stopping, the server will clean up the new workspace if temp_workspace is true. If the workspace path was provided by the client, the behavior remains similar, except that the workspace is not removed even if temp_workspace is set to true.

@microsoft-github-policy-service agree


Auth not used when multiple files are provided

When using "new download" and adding several URLs, aria2 isn't passed the auth (cookies) for those domains.
Single URLs work fine

Also, single files to certain urls (tested with SecureFiles), Aria2ng doesn't grab any headers

how to reproduce?

Aria2ng doesn't grab any headers

Are you sure it is not Aria2-Integration related issue?
Aria2Ng should not "grab" anything.

I am looking to reproduce soon

Aria2ng doesn't grab any headers

Are you sure it is not Aria2-Integration related issue?
Aria2Ng should not "grab" anything.

Hi, sorry, yes, just realized this is a Aria2-for-chrome issue probably! https://github.com/alexhua/Aria2-for-chrome/issues/61


set URI + NDEF

hi
i want to set the uri identifier (0x00 or 0x01 open website) But with block write i only can set ascii characters?!

import nxppy
mifare = nxppy.Mifare()
Select the first available tag and return the UID
uid = mifare.select()
Write a URL
mifare.write_block(3, b' ') #SPACE
mifare.write_block(4, b'UID ') # UID BEGIN
mifare.write_block(5, b'elem')
mifare.write_block(6, b'ent1')
mifare.write_block(7, b'4.uk')
mifare.write_block(8, b'UID') # UID END

got my own solution with the binascii module. I will post the code in few days

Hi @marfis89,
I know it's a long time ago, but did you remember how to write a NDEF message with this library ? Is it working with write_block ?
Thank you !


Update helm charts

We've updated the committer to accept configuration parameters via a config file and switched our database backend to Postgres. To enable deployment, we need to update our Helm charts to reflect these changes.

done


Integrate NVIDIA DALI with JAX containers

https://pypi.nvidia.com

FYI @ashors1

This should be better done with a reorg of our container hierarchy. Eventually, there should be one 'base' container that contains just JAX and nothing else and an 'extended' container that has a comprehensive list of JAX ecosystem software.

Or https://pypi.org/project/nvidia-dali-cuda120/


Docs: update example for ApolloQuery

This example must be updated maybe like the main example.

Good 👀. I'm updating that example and adding a similar example for ApolloMutation


sha256sum hashes

Nice work, but I am missing vulnerable JndiLookup.class sha256sum hashes. Can anybody checkin to this project? Did not find anything on the net (there are hashes for log4j-core-xx.jar files, however available from the Apache repository), but it is pointless here to test on a .class level
2.You might not want to execute the hashing on the production machine /VM (cpu load), so I suggest to add some possibilties to check on a local machine and access the webserver only via ssh and pulling the .jar files to test. This might also circumvent where the webserver is blocked by a firewall for outgoing requests (either wget or curl).

Please check if this is solved

Thanks this seems to work for me. I.e. hashes for the complete JAR files of the susceptible 2.x versions are in hashes-pre-cve.txt.
If found the following two lists of hashes on the net:
scstanton: https://github.com/scstanton/log4j-hashes/blob/main/sha256sum.txt
mubex: https://github.com/mubix/CVE-2021-44228-Log4Shell-Hashes/blob/main/sha256sums.txt
while mubex has been referenced by lunasec.io's thread on how to detect the original exploit here:
the scstanton also includes sha256 hashes for the 1.x versions too.
Apart from that I do not know if it would be better to check for the actually relevant JndiManager.class which in turn imports the JndiLookup.class. I have seen e.g. log4j-finder to check only for the class inside the JAR file.
@rubo77 I do not know if it would be feasible to generate md5 / sha256 hashes of the JndiManager.class inside the JARs ?
Regarding @whenselm 2. I do not know if this is really necessary. The script itself is executable together with the hashes-pre-cve.txt or whatever other hashes you supply. Though I do like the approach of the log4j-finder to include the hashes within the script itself, either using a here-doc or something similar as a safe default to be overwritten by a hashes file argument.

Checked the source code, you can call the script with any of the above URLs as parameter and it will download the hashes via wget / curl.
Now if there would be a third option besides wget & curl, you could call it with a local file instead of a remote URL that would allow to run it without internet connection.

You could add a pull request, that checks if the local file exists and use it only then

thanks for providing hashes for the class files itself, I saw the mentioned
jar archive's hashes before, did not work for me. 2.It's fine 4 me to
download the jar file from a source or local file. Next step I would like
to do is to check the files locally and not the production machine by
downloading it first via ssh. So I  will not have A) the cpu load for hash
calculation on a virtual machine and B) circumvent the https/sftp/ pull
requests for the machine under test which will be blocked by the firewall.
So I do not have to upload anything on remotre machines under test
On Mon, Dec 20, 2021 at 8:01 PM Ruben Barkow-Kuder @.***>
wrote:

Please check if this is solved
—
Reply to this email directly, view it on GitHub
https://github.com/rubo77/log4j_checker_beta/issues/8#issuecomment-998190329,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AW6GTHTICXZS37SWMUERBBLUR54P5ANCNFSM5KF2SWLA
.
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 authored the thread.Message ID:
@.***>

I do not understand how you would gain less impact on the VMs you are about to analyse when you A. download the JAR files via a secure/encrypted protocol like ssh which will do its own hashes to do encryption and checksums and B. It is neither mire performant nor less than SFTP and the like. So either you do it remotely with the hashes copied or included or you may need to write a nice rsync script to pull all the relevant JAR files for local analysis.
YMMV

You could add a pull request, that checks if the local file exists and use it only then

I added a check if the parameter is a URL, if not it uses a local file now. See README.md

@rubo77 thanks for the latest addition, you even added some of the JNDIContextSelector.class hashes to the prepackaged hash file. Thanks a lot.
I have one further question which I did not figure out from the code:
Given an EAR file a.ear containing amongst others eg. a WAR file b.war which again contains a JAR file named c.jar which may contain a repackaged / rebundled version of the susceptible JndiLookup/JndiContextSelector.classes will your script recurse into a.ear to unpack b.war and then c.jar to generate the hashes for comparison of the class files ?
Ie. does your script run a recursive, depth-first search to find log4j or the suspected Class files in any packaged EAR/WAR/JAR combination our fellow developers came/come up with when developing and adding dependencies to their application stack of libraries ?
Though should I add a separate issue for such a deep inspection ?
@whenselm Regarding 2. I dunno if this is really feasible or useful doubting the impact of calculating the hashes locally vs. the overhead of transferring the classes and calculate hashes remotely.

should I add a separate issue for such a deep inspection ?

Yes please

I have one question: Why are the provided hashes for "JNDIContextSelector.class" and not for "JndiLookup.class"?
We got patches for our embedded systems, AFAIK they only removed "JNDILookup.class" from the .jar files (2.0) . But I still get vulnerable results when running the script. In general, this issue can be closed. Performance/CPU load is now ok, when not running in verbose mode

@gmoniker : maybe you can say something about the hashes?
they were added at https://github.com/rubo77/log4j_checker_beta/commit/2e55b739fcc4ec196182733a8957f063e2ce519c

@whenselm
I have compared the SHA256 Hashes with those in other tools before and they matched the JndiLookup.class file in general, i.e. those lines with the log4j version at the end.
These are both in the scstanton and mubex lists I referenced above.
There is only two hashes for the JNDIContextSelector.class
I believe this is for 1.x and 2.x maybe @gmoniker can comment on my assumption.

@stefan123t did you notice the commit, where I added two more hashes?

a lot of (~half )provided hashes are doublettes. Should be concatenated to improve scan speed (add corresponding version on right side rather than one hash per version). I do not know how to comit a change ...
so line 2,4,8,10,16,19,21,22,24,25,27,28,31,31,33,34,35,37,40,41,42,44 are doubletes.
@stefan123t , I see in the mubex list other hashes from the complee libraries, not the classfile itself? Did you generate /compare it?

Just click the edit button here on GitHub.
It leads to a pull request

I checked now thw hashes of my embedded system. The script reports false positives because it checks as mentioned JndiContextSelector.class rather than the JndiLookup.class, which was removed from the embedded system
here version 2.5

for comparison, this is the corect sha-256 hash for version 2.5

Dear @whenselm,
No I did not compare it thoroughly enough. Your assumptions are right. I guess though that the JndiContextSelector.class hashes have been added to also catch cases of the ctx: / context vulnerability detected later as CVE-2021-450346 and fixed in IMHO 2.17 or even 2.17.1 respectively.
Therefor you may want to scan also those hashes.
Regarding the duplicate hashes that were seen I agree that they should be merged into one unique line. Is the second column used eg for output ? If yes it should contain a list of the affected version numbers to display.
Kind regards,
Stefan

Please create a pull request


update: Dockerfile optimized & reduced build layer

reduced 2M for the image.
Current,
REPOSITORY      TAG       IMAGE ID       CREATED         SIZE
script-runner   latest    770a19bf7490   8 minutes ago   7.71MB

Old,
REPOSITORY                     TAG       IMAGE ID       CREATED         SIZE
techthinkerorg/script-runner   latest    db34d7cd3f86   3 weeks ago     9.69MB

stale PR.


format/2 crash with the ~NI control sequence

$ tpl
?- current_prolog_flag(version_data, VD).
   VD = trealla(2,34,22,[]).
?- A is 1<<100, format('~10I', [A]).
tpl(63814,0x7ff84b1447c0) malloc: Heap corruption detected, free list is damaged at 0x60000298c540
*** Incorrect guard value:<PHONE_NUMBER>51007
tpl(63814,0x7ff84b1447c0) malloc: *** set a breakpoint in malloc_error_break to debug
1_2676506002_2822940149_6703205376   A = Abort trap: 6

No longer crashes with v2.34.23 but:
$ tpl
?- A is 1<<100, format('~10I', [A]).
_2676506002_2822940149_6703205376   A =<PHONE_NUMBER>228229401496703205376.

The query is expected to print 1_2676506002_2822940149_6703205376. I.e. the first digit is missing.

$ tpl
?- current_prolog_flag(version_data, VD).
   VD = trealla(2,34,25,[]).
?- A is 1<<100, format('~10I~n', [A]).
1_2676506002_2822940149_6703205376
   A =<PHONE_NUMBER>228229401496703205376.
?- A is 1<<42, format('~10I~n', [A]).
439_8046511104
   A =<PHONE_NUMBER>104.

Thanks for the quick fix.


Support for WebGL 2 in RenderingModule

https://github.com/mrdoob/three.js/issues/9965
We need to add WebGL2Renderer support to RenderingModule.
Concept
RenderingModule will detect webgl 2 support. If webgl 2 is supported then THREE.WebGL2Renderer will be used. If not - it will use THREE.WebGLRenderer as always.
Implementation

[ ] Test THREE.WebGL2Rendererwork in whs using RenderingModule.
[ ] Implement a WebGL 2 detector.
[ ] Use webgl 2 renderer if WebGL2 is supported

WebGL 2 Support

https://blog.chromium.org/2017/03/faster-3d-rendering-with-webgl-20.html
https://github.com/WebGLSamples/WebGL2Samples

Version:

[x] v2.x.x
[ ] v1.x.x

Issue type:

[ ] Bug
[x] Proposal/Enhancement
[ ] Question

 Tested on:
Desktop

[ ] Chrome
[ ] Chrome Canary
[ ] Chrome dev-channel
[ ] Firefox
[ ] Opera
[ ] Microsoft IE
[ ] Microsoft Edge

Android

[ ] Chrome
[ ] Firefox
[ ] Opera

IOS

[ ] Chrome
[ ] Firefox
[ ] Opera

Probably good to also add some examples using webgl 2 features, like

[ ] transform feedback

http://www.realtimerendering.com/blog/webgl-2-new-features/


fix: use default express prom bundle setup for indexer api

Motivation
Fine to follow the default express prom bundle metrics to the /metrics endpoint
Solution
Simplify the indexer api setup
PR Checklist

[ ] Added Tests
[ ] Updated Documentation
[x] Updated CHANGELOG.md for the appropriate package

Not needed anymore after merging this https://github.com/nomad-xyz/monorepo/pull/366


[WebUI] Use Case: Select Scan Type

To scan via WebUI users need to select one or more scan types they want to use. The web scan can only be used alone. all other scan types can be combined as desired. the UI should support the user and show which combinations are possible.

Inexperienced users should be able to get more information about the scan types.

Part of #1813

Not an Issue, will be implemented in #1900

Not an Issue, will be implemented in https://github.com/mercedes-benz/sechub/issues/1900


style(eslint): commit eslint fixes

Description

Just committing the file changes made by prettier-eslint.
Motivation and Context

Avoid the file from getting updated on every commit.
How Has This Been Tested?

precommit still passes.
Screenshots (if appropriate):
N/A
Types of changes

[ ] ~Bug fix (non-breaking change which fixes an issue)~
[ ] ~New feature (non-breaking change which adds functionality)~
[ ] ~Breaking change (fix or feature that would cause existing functionality to not work as expected)~

Checklist:

[x] My code follows the code style of this project.
[ ] ~My change requires a change to the documentation.~

[ ] ~I have updated the documentation accordingly.~

[ ] ~I have included a vue-play example (if this is a new feature)~

Coverage remained the same at 67.197% when pulling 53fd8c09498ad2694fcbdd94f0a10b0beb98bd37 on josephting:style/eslint into cbb367fc0f908452b606b9e7b4b85f5f0a503461 on SSENSE:v0.17.0.

Ah I've been meaning to do this, I need to rework the commit script so it just adds this stuff in automatically lol will make a note to do this. Merging now, thanks!

@quinnlangille Yeah, that was what I thought as well. I'll look into re-adding the lint changes back into the commit if I have extra time.


@conda-forge-admin, please add user @WardLT

Additional comment:
@conda-forge-admin, please add user @WardLT

Hi! This is the friendly automated conda-forge-webservice.
I just wanted to let you know that I added user @WardLT in conda-forge/foundry_ml-feedstock#4.


[Feature Request]: Mobile view of the app

Is there an existing issue for this?

[X] I have searched the existing issues

Feature Description
the website is only supported in the pc view on minimizing the screen the half part of the website becomes hidden
Use Case
on addition of this feature the website will adjust itself according to the height and width of the device making it user compatible
Benefits
will allow users to use the website on any kinds of devices
Add ScreenShots
No response
Priority
High
Record

[X] I have read the Contributing Guidelines
[X] I'm a GSSOC'24 contributor
[X] I'm a VSOC'24 contributor
[X] I have starred the repository

@Shivani756 can we collab in it , @apu52  please assign this issue to both of us

@apu52
we @Shivani756 and @litesh1123 would like to collaborate.Please assigned this issue to both of us

@Shivani756 @litesh1123 I have assigned u both .Please use co-authored so that u both will get points for this pR

@apu52 thank you for assigning


test: fails with build artifacts

When running cmgr test on a challenge with artifacts they fail to get written to disk prior to the solver image starting. When running with --no-solve the tar is properly written to disk.
relevant line:
cmgr: [ERROR:  failed to build solver image: error during connect: Post "http://%2Fvar%2Frun%2Fdocker.sock/v1.25/build?buildargs=null&cachefrom=null&cgroupparent=&cpuperiod=0&cpuquota=0&cpusetcpus=&cpusetmems=&cpushares=0&dockerfile=&labels=null&memory=0&memswap=0&networkmode=&rm=0&shmsize=0&t=ecb-1%2Fsolver%3A3&ulimits=null": open /home/r/code/cmgr/4333f91abd45bb47dcac624a4cf08b3fe9c283267182287e80bab3c8e475378f.tar.gz: no such file or directory]

full log:
$ ./bin/cmgr test examples/ecb-1/
cmgr: [INFO:  challenge directory: /home/r/code/cmgr]
cmgr: [INFO:  artifacts directory: /home/r/code/cmgr]
cmgr: [INFO:  connected to docker (API v1.40)]
cmgr: [INFO:  searching /home/r/code/cmgr/examples/ecb-1 for challenges]
cmgr: [INFO:  found challenge ecb-1]
cmgr: [INFO:  searching /home/r/code/cmgr/examples/ecb-1 for challenges]
cmgr: [INFO:  found challenge ecb-1]
cmgr: [INFO:  searching /home/r/code/cmgr/examples/ecb-1 for challenges]
cmgr: [INFO:  found challenge ecb-1]
cmgr: [INFO:  created container 04d70c80cfeeeb1e068a586425caf9dd1554c56647816547810448eb6dea7aec]
cmgr: [INFO:  created new image: 9c518efd9686a13be76ddd9c7ddad578e1bbfb21cf778bd74c0f20e28d224c08]
cmgr: [ERROR:  failed to build solver image: error during connect: Post "http://%2Fvar%2Frun%2Fdocker.sock/v1.25/build?buildargs=null&cachefrom=null&cgroupparent=&cpuperiod=0&cpuquota=0&cpusetcpus=&cpusetmems=&cpushares=0&dockerfile=&labels=null&memory=0&memswap=0&networkmode=&rm=0&shmsize=0&t=ecb-1%2Fsolver%3A3&ulimits=null": open /home/r/code/cmgr/4333f91abd45bb47dcac624a4cf08b3fe9c283267182287e80bab3c8e475378f.tar.gz: no such file or directory]
error (ecb-1): solver failed: error during connect: Post "http://%2Fvar%2Frun%2Fdocker.sock/v1.25/build?buildargs=null&cachefrom=null&cgroupparent=&cpuperiod=0&cpuquota=0&cpusetcpus=&cpusetmems=&cpushares=0&dockerfile=&labels=null&memory=0&memswap=0&networkmode=&rm=0&shmsize=0&t=ecb-1%2Fsolver%3A3&ulimits=null": open /home/r/code/cmgr/4333f91abd45bb47dcac624a4cf08b3fe9c283267182287e80bab3c8e475378f.tar.gz: no such file or directory
cmgr: [ERROR:  failed to remove image: Error response from daemon: conflict: unable to remove repository reference "ecb-1:f8a0ec358ae1b74474eb88020dacd3d7fbd8ba1aa13c5d10348ca72ecd658b52" (must force) - container d21c1daa9437 is using its referenced image 5d8b86ef20f7]

Turns out the tar i created but seemingly removed prior to when the solver can use it.

Seems that it is actually that the tar name is incorrect:
cmgr: [ERROR:  failed to build solver image: error during connect: Post "http://%2Fvar%2Frun%2Fdocker.sock/v1.25/build?buildargs=null&cachefrom=null&cgroupparent=&cpuperiod=0&cpuquota=0&cpusetcpus=&cpusetmems=&cpushares=0&dockerfile=&labels=null&memory=0&memswap=0&networkmode=&rm=0&shmsize=0&t=cmgr%2Fexamples%2Fcustom-socat%2Fsolver%3A2&ulimits=null": open /home/r/code/cmgr/6fd0fa68915bdd38c63df70038c735ee360ccad95e022f1da4b79f0051c1c041.tar.gz: no such file or directory]
error (cmgr/examples/custom-socat): solver failed: error during connect: Post "http://%2Fvar%2Frun%2Fdocker.sock/v1.25/build?buildargs=null&cachefrom=null&cgroupparent=&cpuperiod=0&cpuquota=0&cpusetcpus=&cpusetmems=&cpushares=0&dockerfile=&labels=null&memory=0&memswap=0&networkmode=&rm=0&shmsize=0&t=cmgr%2Fexamples%2Fcustom-socat%2Fsolver%3A2&ulimits=null": open /home/r/code/cmgr/6fd0fa68915bdd38c63df70038c735ee360ccad95e022f1da4b79f0051c1c041.tar.gz: no such file or directory
cmgr: [DEBUG:  stopping instance 1]
cmgr: [DEBUG:  destroying build 2]
cmgr: [WARN:  Removing: 20e05690710b7a965eefa1d2cc53b060b9780031e1eebe578bd1ee474da62524.tar.gz]
```

```
docker.go:                      artifactsFileName := fmt.Sprintf("%s.tar.gz", image.DockerId)
```
v.s.
```
solver_framework.go:                    artifactsPath := filepath.Join(m.artifactsDir, fmt.Sprintf("%s.tar.gz", sumStr))
```

r@x: ~/code/cmgr $ ./bin/cmgr test examples/custom/
cmgr: [WARN:  extracting to: 20e05690710b7a965eefa1d2cc53b060b9780031e1eebe578bd1ee474da62524.tar.gz]
cmgr: [WARN:  artifacts: /home/r/code/cmgr/6fd0fa68915bdd38c63df70038c735ee360ccad95e022f1da4b79f0051c1c041.tar.gz]
cmgr: [ERROR:  failed to build solver image: error during connect: Post "http://%2Fvar%2Frun%2Fdocker.sock/v1.25/build?buildargs=null&cachefrom=null&cgroupparent=&cpuperiod=0&cpuquota=0&cpusetcpus=&cpusetmems=&cpushares=0&dockerfile=&labels=null&memory=0&memswap=0&networkmode=&rm=0&shmsize=0&t=cmgr%2Fexamples%2Fcustom-socat%2Fsolver%3A1&ulimits=null": open /home/r/code/cmgr/6fd0fa68915bdd38c63df70038c735ee360ccad95e022f1da4b79f0051c1c041.tar.gz: no such file or directory]
error (cmgr/examples/custom-socat): solver failed: error during connect: Post "http://%2Fvar%2Frun%2Fdocker.sock/v1.25/build?buildargs=null&cachefrom=null&cgroupparent=&cpuperiod=0&cpuquota=0&cpusetcpus=&cpusetmems=&cpushares=0&dockerfile=&labels=null&memory=0&memswap=0&networkmode=&rm=0&shmsize=0&t=cmgr%2Fexamples%2Fcustom-socat%2Fsolver%3A1&ulimits=null": open /home/r/code/cmgr/6fd0fa68915bdd38c63df70038c735ee360ccad95e022f1da4b79f0051c1c041.tar.gz: no such file or directory
cmgr: [WARN:  Removing: 20e05690710b7a965eefa1d2cc53b060b9780031e1eebe578bd1ee474da62524.tar.gz]

yeah root cause ties back to changing the format of the seed:
cmgr/solver_framework.go
-                       sum := sha256.Sum256([]byte(fmt.Sprintf("%s:%s:%x", meta.Challenge, meta.Format, meta.Seed)))
+                       sum := sha256.Sum256([]byte(fmt.Sprintf("%s:%s:%d", meta.Challenge, meta.Format, meta.Seed)))

%x to %d

closing since was never an issue on master.
only an issue on #9. Since resolved.
As a meta point though, the construction of the hash/id/artifact path is scattered about a few places and might benefit from a helper function/struct method


Add On via Docker Container

Hello,
I am running Debain 12 (vm to test before I install in production) and I am running HA as a docker container. I tried running your add-on but I get an error:

This redirect is not supported by your Home Assistant installation. It needs either the Home Assistant Operating System or Home Assistant Supervised installation method. For more information, see the documentation.

I do see you have a docker-compose file, however, I am not entirely sure how I can download your add-on.
Will it work with HA as a docker container?
Host Info
 Static hostname: debian
       Icon name: computer-vm
         Chassis: vm 🖴
      Machine ID: f3ddccf7c779492bb2a8cc676eaefb92
         Boot ID: 2bfe89c875a746e4b59412033bc0e2a9
  Virtualization: qemu
Operating System: Debian GNU/Linux 12 (bookworm)
          Kernel: Linux 6.1.0-27-arm64
    Architecture: arm64
 Hardware Vendor: QEMU
  Hardware Model: QEMU Virtual Machine
Firmware Version: 0.0.0

Docker Container
CONTAINER ID   IMAGE                                          COMMAND   CREATED        STATUS          PORTS     NAMES
578ef892361a   ghcr.io/home-assistant/home-assistant:stable   "/init"   26 hours ago   Up 46 minutes             homeassistant

Thank you @dm82m, I will need to dive deep into how Home Assistant works to figure out how to create the docker image you mention. I appreciate the answer and saving me time from spending hours trying to figure out if your add-on would work on my setup.
I am not sure if I am allowed to close the issue, so I will leave it to you. But I have no further questions for now.


Error while building timeloop-accelergy

Dear developers,
There is an error when I run the command scon -j4 --accelergy --static, and the error is like this:
/usr/include/boost/multiprecision/cpp_int.hpp:175:4: error: right operand of shift expression ‘(1 << 63)’ is >= than the precision of the left operand [-fpermissive]
BOOST_STATIC_CONSTANT(limb_type, sign_bit_mask = 1u << (limb_bits - 1));
Do you have any solutions for this error? Thank you!

It might be that your ubuntu version is not up to date. The code has been tested against Ubuntu18, libconfig 1.5+, gcc9.3/7.5. If all of you system requirements are met, please open an issue to the Timeloop repo, and we will address the problem from there.


Beta skewness limits incorrect

Hello everyone,
I believe I've spotted a bug with the skewness for a beta distribution.
In distribution::beta the skewness function returns incorrect values when shape_a or shape_b are infinite. Currently this function gives -2.0 for infinite shape_a and 2.0 for infinite shape_b but these are not the correct limits for the skewness of a beta distribution.
The skewness of a beta distribution with shape parameters α, β is:
[ 2(β - α)/(α + β + 2) ]  * sqrt( (α + β + 1) / (αβ) )
The limit of this as α tends to infinity is 2/sqrt(β). And the limit of this as β tends to infinity is -2/sqrt(α). I've attached a short proof of these.
beta_skewness_limits.pdf
If I have access I'll make a PR to fix this.
references:
https://en.wikipedia.org/wiki/Beta_distribution#Skewness
https://mathworld.wolfram.com/BetaDistribution.html

Thanks for the report, this is correct with that choice of the limit. However it's not clear that's the obvious thing to do. The edge-cases in this library are generally a bit wonky and have been discussed before #102 .
A mathematical limit is defined if lim X -> Y f(X) is the same as f(lim X -> Y) = f(Y) with a reasonable choice of lim X -> Y. The space of all Beta distributions has two parameters, but in this case the limit is an artifact of the parameterization: Established convergence definitions of random variables are defined to be independent of this.
Barring any math errors:
The limit as a distribution for alpha or beta towards inf is the point distribution at the edges 0, 1.
Let's define f(X) = skewness(X) = E((X-mu)^3)/(E((X-mu)^2)^(3/2)
Then one sequence of random variables converging to X = 1 is a=1,2,3.. B(a,b) while different sequence converging to X = 1 is Xn = 1 - 1/n. One sequence leads to the limit skewness(B(inf,b)) = -2/sqrt(b) and the other leads to lim n -> oo skewness(Xn) = 1. Thus the limit does not exist.
In light of these problems, I intended to remove all the special, degenerate cases, but haven't gotten around to it.


baidu issues

Dear, in the chrome simulation Baiduspider is very fast,but Baidu webmaster tools to grab the page is very slow, what is the reason?

Baidu webmaster tools must not be passing the right user agent? Can you verify that you see a request from them with the same user agent as their crawler when you use webmaster tools?

Feel free to reopen this issue if you find more information.


feat: check tx status

irt #608

@hstove how's this look to approve and merge with Alex's change?

My suggested change was missing the final backticks (```) so if you look at the Markdown preview, it's broken. I think its a bug in the Github "suggested change" feature.

@hstove fixed, thanks! can you approve please?


Add clarifications for string key reliable collection sort order

This doc change let the customer know that the RC is currently using CurrentCulture sort order for string key.

@tomvcassidy

Can you review this PR?
IMPORTANT: When this content is ready to merge, you must add #sign-off in a comment or the approval may get overlooked.

#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team


[RESOLVED] High ICMP ping response time

Problem started at 12:57:16 on 2023.08.04
Problem name: High ICMP ping response time
Host: ST-FG
Severity: Warning
Operational data: Value: 123ms
Original problem ID: 34607
Event details in Zabbix: http://<IP_ADDRESS>/tr_events.php?triggerid=23135&eventid=34607

Problem has been resolved in 2m 0s at 12:59:16 on 2023.08.04
Problem name: High ICMP ping response time
Host: ST-FG
Severity: Warning
Original problem ID: 34607


Add support for Braintree::AddOn.all

We need the ability to grab add-ons when using FakeBraintree, and in
this instance we simply return no add-ons

Looks S.O.L.I.D :+1:


Citation or comparison to trlX and NeMo-align.

Hi
I notice you cite "70B+ Full Tuning with 16 A100" however this is also something that trlX (and that we worked very hard to add ;) ) supports via NeMo support. Similarly, this is something that nvidia has implemented in their NeMo suite of tools.
Similarly, all of the libraries you compare to have implemented "PPO Implementation Tricks." trlX first did this in the fall of 2022, and I discussed this with the hugging face trl team shortly after (I believe they had it merged by January or February 2023).
This aside though, these tricks often don't actually really benefit RLHF as some of my friends (Costa Huang + others.) and I have discussed. If you have noticed contradicting evidence I would be incredibly interested in learning more.

We will compare OpenRLHF with the existing framework in a formal technical report.
The biggest weaknesses of NeMo-based solutions are:

Megatron-based generation is very slow, which leads to low overall training efficiency.
It does not support models on HuggingFace.

For PPO implementation tricks, this is a common practice in RL and has been around for a long time.
We only used the necessary tricks, and indeed most of them were already implemented in TRLX.

Hi, have you ever compared the speed of OpenRLHF and nemo-aligner ?

@THINK2TRY Openrlhf is currently faster than NEMO with VLLM


proposal: minimal vs standard containers

today, CNPG provides two operand container images: postgresql-containers and postgis-containers based on two respective upstream containers maintained by the docker community.
there are already several requests for specific extensions, and i'm sure more will come. i would propose that CNPG changes its strategy to simply provide two images: a "minimal" image with only the bare minimum extensions which is suitable for users to fork and customize with their own list of extensions, and a "standard" image with a liberal policy of including any extension which is packaged for Debian by CNPG.
this policy would encourage contribution to CNPG Debian packaging as an upstream (if desired extensions aren't there already), consolidate maintenance in the debian ecosystem, provide an easy way for CNPG users to get an image with most extensions they want, and still provide a minimal small image as a base for customization.
i don't think there needs to be a separate image for postgis; i think it can be included in a standard image (similar to what cloud providers do). at some point in the future there may be concerns about the size getting too bloated, but i think we can cross that bridge when we come to it (and discuss whether there should be some third middle option). in the meantime if we only add extensions that are explicitly requested by a user and available in Debian repos, then i think the pace of growth will be manageable.
thoughts?

Hi @ardentperf,
Thank you for your thoughtful proposal. I fully understand it, and I agree that this is a crucial moment for the community to make a decision.
That said, I believe it's important to provide some additional context regarding the future direction of the project, particularly in terms of container image requirements and extensions.
Requirements
With the introduction of CNPG-I and the experimental plugin for Barman Cloud, we are moving toward eliminating Barman Cloud as a strict requirement for CloudNativePG. In upcoming versions, we plan to transition to a plugin-based backup and recovery system, which will allow us to separate PostgreSQL operands from Barman Cloud operands. This change will enable us to leverage Docker Hub's official PostgreSQL images directly.
Extensions
We are actively involved in the development of the extension_control_path feature for PostgreSQL 18. Our long-term vision is for each extension to be distributed as a self-contained container image. CloudNativePG would then be able to rely on Kubernetes' VolumeMount functionality (currently in alpha) to mount immutable extension images as volumes and configure PostgreSQL to find them. David Wheeler has provided an excellent overview of the current status of this initiative here: [RFC on Extension Packaging and Lookup](https://justatheory.com/2024/11/rfc-extension-packaging-lookup/).
Thoughts
In light of the long-term roadmap for extensions, here's where I currently stand:

We can create minimal CNPG images based on the official Docker Hub PostgreSQL images. The only modification is to adjust UID and GID from 999 to 26.
We could also create standard CNPG images that include all Debian-compatible extensions and are licensing-compliant, as you suggested.

Would you be interested in contributing to this project?
What do other maintainers and component owners think?

In upcoming versions, we plan to transition to a plugin-based backup and recovery system, which will allow us to separate PostgreSQL operands from Barman Cloud operands. This change will enable us to leverage Docker Hub's official PostgreSQL images directly.

...

Our long-term vision is for each extension to be distributed as a self-contained container image. CloudNativePG would then be able to rely on Kubernetes' VolumeMount functionality (currently in alpha) to mount immutable extension images as volumes and configure PostgreSQL to find them.

Is the idea that the kubernetes Cluster definition yaml would no longer accept only one image, but would accept a base image and also a list of extension images? And is the idea that eventually CNPG wouldn't provide base images at all anymore, but only a set of "extension" images that can be mounted (sidecar-style?) alongside the official docker postgres base image in the pod?
If someday CNPG didn't provide base images, then what about failover slots and backup software? Those two seem pretty fundamental and I feel like people probably shouldn't deploy postgres on CNPG without them. I feel like those might be the two that merit being installed in a minimal image along with the UID change. By the way, why does the UID need to be changed from 999 to 26 for CNPG?
Side note... I'm also glad that CNPG explicitly sets the default locale back to C rather than en-US which is the default in the official docker image. I'm probably tuned into the collation problems more than most, having been involved in that for awhile. But setting local to en-US is done in CNPG code at cluster provisioning time, not in the docker image itself - so not relevant to how docker images are built.

In light of the long-term roadmap for extensions, here's where I currently stand:

We can create minimal CNPG images based on the official Docker Hub PostgreSQL images. The only modification is to adjust UID and GID from 999 to 26.
We could also create standard CNPG images that include all Debian-compatible extensions and are licensing-compliant, as you suggested.

It's also worth considering size. When I looked just now, I think the three extensions we currently install from repos (audit, vector and failover slots) consume 2MB out of a total around 570MB in the container. Barman together with all its python dependencies is huge (130MB); hopefully that shrinks a bit with the move to packaging and CNPG-I. As we begin looking at more extensions, I do want to be cognizant of size. I think it's ok for the "standard" container to be a bit larger in order to provide an easy "batteries included" user experience, and we can document examples of how to create smaller images by building on the "minimal" container for people who need to keep the size down.
Yes, this is a project I'd be interested in contributing to.

Is the idea that the kubernetes Cluster definition yaml would no longer accept only one image, but would accept a base image and also a list of extension images?

Not really. The concept of the image as it is now will not change (at least it is not in the current plans).

And is the idea that eventually CNPG wouldn't provide base images at all anymore, but only a set of "extension" images that can be mounted (sidecar-style?) alongside the official docker postgres base image in the pod?

The main idea is to go towards light and efficient image handling. The operand image with just the bare minimum Postgres components required to run (so ... Postgres, ideally, with core extensions). This means that Barman Cloud will not be required anymore.

If someday CNPG didn't provide base images, then what about failover slots and backup software?

Backup and Recovery software will be managed as plugins. This has been our attempt to provide our preferred way (volume snapshots and Barman Cloud) as well as allowing third parties to develop their favourite backup/recovery tool - and possibly support them. Barman Cloud will be supported as an official CloudNativePG plugin in the future.
Extensions will be managed the current way (add them to the base image) as well as - hopefully - through the new "extension_control_path" configuration option and the VolumeMount feature in Kubernetes, with self-contained images (1 extensions = 1 container image with dependencies). The latter, as you can imagine, will take years to consolidate.

Those two seem pretty fundamental and I feel like people probably shouldn't deploy postgres on CNPG without them.

The above should guarantee what you are asking.

It's also worth considering size. When I looked just now, I think the three extensions we currently install from repos (audit, vector and failover slots) consume 2MB out of a total around 570MB in the container. Barman together with all its python dependencies is huge (130MB); hopefully that shrinks a bit with the move to packaging and CNPG-I. As we begin looking at more extensions, I do want to be cognizant of size. I think it's ok for the "standard" container to be a bit larger in order to provide an easy "batteries included" user experience, and we can document examples of how to create smaller images by building on the "minimal" container for people who need to keep the size down.

Agree. Size matters and ... removing Barman Cloud from the image is also a step in that direction.

Yes, this is a project I'd be interested in contributing to.

It is worth talking with the maintainers about this then.
It is important though to clarify the supportability. It must be clear who is responsible to support users when a certain extension or combination of extensions is not working, or for example, updates, and so on. This could easily become an activity that takes a lot of time and IMHO it is not fair for a community to be expected to do that (my 2 cents).
What do you think?


Add this_thread namespace

thread/std-compact.h already has an equivalent of std::this_thread::sleep

OK, my fault


How to start Ghost in production mode with this repo/image?

I have tried the following with no success:

Override CMD from dockerfile on 'docker run' (https://docs.docker.com/reference/run/#cmd-default-command-or-options)
Use '-e NODE_ENV=production' on 'docker run'
Create a fork of this repository, updated the dockerfile with 'CMD ["node", "start", "--production"]', created an automated build on Docker Hub and all.

Here is the error when trying to 'docker run' the image:

<EMAIL_ADDRESS>start /usr/src/ghost
node index

ERROR: Unable to access Ghost's content path:
EACCES, permission denied '/usr/src/ghost/content/apps/283e85be3ed7c1c0'
Check that the content path exists and file system permissions are correct.
Help and documentation can be found at http://support.ghost.org.

When I was doing the initial pass at this image, I played a little with production mode but in my own testing found that it required some hand-tweaking of the configuration file (which is stored in the database directory /var/lib/ghost -- https://github.com/docker-library/ghost/blob/4ee388e3ff8d7251cfe3f0ac062efb68a0cd2835/docker-entrypoint.sh#L11).
http://support.ghost.org/config/#about-environments has some good information about both modes and why development mode is the default.
Of course, if there are things we can do in the image to make production mode simpler to use, we're definitely open to suggestions. :+1:

I am getting this error too, the links above didn't help with troubleshooting. Still trying to work through it.

ahh, the issue is that it's trying to access /usr/src/ghost/content/apps/ instead of /var/lib/ghost/apps/. Maybe the entrypoint needs to symlink that.

I figured it out. Be sure to add this in your config.js to your production property:
        paths: {
            contentPath: path.join(process.env.GHOST_CONTENT, '/')
        }

It's strange that the paths property is set in development, but not in production.

Thanks you, @johnjelinek ! I'm using Ghost Pro now but I will try this on my VPS.

That seems strange that there is not a default paths section in the production config.  It should be possible for an awk line to insert a paths section with this information.  Would this be necessary or do people bring their own config and they will just need a note on the docs about the required path section?

It might actually be a bug/enhancement for ghost to address.
—
Sent from Mailbox
On Mon, Mar 16, 2015 at 4:45 PM, yosifkit<EMAIL_ADDRESS>wrote:

That seems strange that there is not a default paths section in the production config.  It should be possible for an awk line to insert a paths section with this information.  Would this be necessary or do people bring their own config and they will just need a note on the docs about the required path section?
Reply to this email directly or view it on GitHub:
https://github.com/docker-library/ghost/issues/2#issuecomment-81955260

IMO, it would probably help if we documented clearly that "/var/lib/ghost"
is where the data is stored, and that the configuration file is sourced
from there as well.
Then, documenting how to change the configuration for switching a blog over
to production mode should be more straightforward (or pointing to the
configuration existing in that directory and directing users to upstream's
documentation from there).

It was a little weird having to change my directory structure from what I
had previously with the dockerfile/ghost container. It wasn't too big of
a change though.
On Mon, Mar 16, 2015 at 5:37 PM, Tianon Gravi<EMAIL_ADDRESS>wrote:

IMO, it would probably help if we documented clearly that "/var/lib/ghost"
is where the data is stored, and that the configuration file is sourced
from there as well.
Then, documenting how to change the configuration for switching a blog over
to production mode should be more straightforward (or pointing to the
configuration existing in that directory and directing users to upstream's
documentation from there).
—
Reply to this email directly or view it on GitHub
https://github.com/docker-library/ghost/issues/2#issuecomment-81969630.

@tianon :+1: for mentioning /var/lib/ghost - took me awhile to know it was taking from there while i was copying my custom config.js to /usr/src/ghost. oops
thanks @johnjelinek for the paths tip. weird thing is that when I removed everything in config.js except for the production config, it still wasn't working. so I had to put everything back to get it to work.

@JoSpalding I run this image in production mode with the following docker-compose.yml. There is no need for pull request #5
ghost:
  image: ghost
  ports:
    - 2368:2368
  environment:
    - NODE_ENV=production

:+1:

Thanks for the tip @sandrokeil !

Same issue over here:
$ docker run --name="docker-ghost"  -p 8091:2368 -v /tmp/docker-ghost:/var/lib/ghost -e NODE_ENV=production ghost

><EMAIL_ADDRESS>start /usr/src/ghost
> node index

ERROR: Unable to access Ghost's content path:
  EACCES, permission denied '/usr/src/ghost/content/apps/b19a6ce607ff34c3'

Check that the content path exists and file system permissions are correct.
Help and documentation can be found at http://support.ghost.org.

My file structure:
❯  docker-ghost git:(master) ✗ ls -la
total 40
drwxr-xr-x   9 friedmann  wheel   306 23 Apr 10:44 .
drwxrwxrwt  17 root       wheel   578 23 Apr 11:00 ..
drwxr-xr-x  13 friedmann  wheel   442 23 Apr 11:00 .git
-rw-r--r--   1 friedmann  wheel   384 23 Apr 08:52 .gitignore
-rw-r--r--   1 friedmann  wheel   483 23 Apr 08:23 LICENSE
-rw-r--r--   1 friedmann  wheel   981 23 Apr 10:58 Makefile
-rw-r--r--   1 friedmann  wheel   697 23 Apr 08:23 README.md
-rw-r--r--   1 friedmann  wheel  3774 23 Apr 10:58 config.js
drwxr-xr-x@  7 friedmann  wheel   238 23 Apr 08:25 content

@frdmn: you're missing this property in your production section of the config:
paths: {
            contentPath: path.join(__dirname, '/content/')
        }

see above.

@johnjelinek Same issue with the appended path section:
http://paste.frd.mn/kiyub

❯  docker-ghost git:(master) ✗ docker run --name="docker-ghost" -p 8091:2368 -v /tmp/docker-ghost:/var/lib/ghost -e NODE_ENV=production ghost

><EMAIL_ADDRESS>start /usr/src/ghost
> node index

ERROR: Unable to access Ghost's content path:
  EACCES, permission denied '/usr/src/ghost/content/apps/3f5a4717b0d009f6'

Check that the content path exists and file system permissions are correct.
Help and documentation can be found at http://support.ghost.org.

What does your docker run look like?
—
Sent from Mailbox
On Fri, Apr 24, 2015 at 1:42 AM, Jonas Friedmann<EMAIL_ADDRESS>wrote:

❯  docker-ghost git:(master) ✗ docker run --name="docker-ghost" -p 8091:2368 -v /tmp/docker-ghost:/var/lib/ghost -e NODE_ENV=production ghost
><EMAIL_ADDRESS>start /usr/src/ghost
> node index
ERROR: Unable to access Ghost's content path:
  EACCES, permission denied '/usr/src/ghost/content/apps/3f5a4717b0d009f6'
Check that the content path exists and file system permissions are correct.
Help and documentation can be found at http://support.ghost.org.

Reply to this email directly or view it on GitHub:
https://github.com/docker-library/ghost/issues/2#issuecomment-95822502

You can see the command argument in my previous comment:
$ docker run --name="docker-ghost" --restart=always -d -p  8091:2368 -v /tmp/docker-ghost:/var/lib/ghost -e NODE_ENV=production ghost

Same problem here. To "solve", I run it once in development mode, update the files (e.g. config.js as described above) and then run again with NODE_ENV=production. This definitely should be solved so that path is added to the default config.js that's created.

I was excited about the docker image, but that was excessively unintuitive.
for others, here's my config as a reference:
I'm providing PUBLIC_URL and PORT, others are injected by the image
// # Ghost Configuration
// Setup your Ghost install for various [environments](http://support.ghost.org/config/#about-environments).

// Ghost runs in `development` mode by default. Full documentation can be found at http://support.ghost.org/config/

const path = require('path')
const PUBLIC_URL = process.env.PUBLIC_URL
const PORT = process.env.PORT || '2368'
const GHOST_CONTENT = process.env.GHOST_CONTENT
const GHOST_SOURCE = process.env.GHOST_SOURCE

console.log('using this config!')
console.log('GHOST_CONTENT:', GHOST_CONTENT) //  /var/lib/ghost
console.log('GHOST_SOURCE:', GHOST_SOURCE)   //  /usr/src/ghost

var config = {
    // ### Production
    // When running Ghost in the wild, use the production environment.
    // Configure your URL and mail settings here
    production: {
        url: PUBLIC_URL,
        paths: {
            contentPath: GHOST_CONTENT,
        },
        mail: {},
        database: {
            client: 'sqlite3',
            connection: {
                filename: path.join(GHOST_CONTENT, '/data/ghost.db'),
            },
            debug: true,
        },

        server: {
            host: '<IP_ADDRESS>',
            port: PORT,
        }
    }
}

module.exports = config

I'm using VIRTUAL_HOST and VIRTUAL_PORT outside of Ghost, not needed.
blog:
  image: library/ghost
  environment:
    VIRTUAL_HOST: "blog.metamask.io"
    VIRTUAL_PORT: "9000"
    PORT: "9000"
    NODE_ENV: "production"
    PUBLIC_URL: "https://blog.metamask.io"
  volumes:
    - /var/data/blog:/var/lib/ghost
  ports:
    - "9000"

Thanks @kumavis! That was a big help.
:+1:

Spent quite a bit of time batting with this image as well. Thanks for the thorough summary, @kumavis – helped get me to the finish line.

Thanks! +10087

@kumavis Thanks a lot!

@kumavis Thanks!

I was having issues with this and i found this: https://github.com/docker-library/ghost/issues/15
Specifically the comment from @mustafaakin which states this:

I have modified the Dockerfile to allow production and it seems to work:

 RUN chown -R user:user /usr/src/ghost/
 CMD ["npm", "start", "--production"]

I skipped the CMD part, but running the chown -R user:user /usr/src/ghost/ solved the problem for me.

Thanks for the solutions!

This issue still existed for me. The above fix, (https://github.com/docker-library/ghost/issues/2#issuecomment-81368071) worked for me.

is this issue resolved? or why is it closed?
I am still getting the same issue

I don't see why the fix in 2nd Comment is still not part of the default config? Will it do any harm if present for other scenarios?
This issue is two years old now and still there is no well documented workaround on the docker hub.

For non-existent configs it's solved and part of the image. Existing config has to edit like this. If you want it documented open a pull request for documentation. Should be possible in less than 5 minutes. Check the entrypoint script.

Seems not fixed for non-existent, because the entry-point script copies from the sample config which does not include the paths entry discussed in 2nd comment. At least for 0.11.7 that is the case.

Can someone share their config? I can't run this locally, I stumped.
My config must be wrong. I removed test also, I had problems prior to that though.

Docker version 17.03.1-ce, build c6d412e
ghost:0.11.7

I tried @kumavis suggestion which does help (just dont declare config twice if ya do).
I am getting the variables below too.
docker run  -p 8080:2368 -v $PWD/:/var/lib/ghost ghost:0.11.7
npm info it worked if it ends with ok
npm info using<EMAIL_ADDRESS>npm info using<EMAIL_ADDRESS>npm info prestart<EMAIL_ADDRESS>npm info start<EMAIL_ADDRESS>
><EMAIL_ADDRESS>start /usr/src/ghost
> node index

using this config!
GHOST_CONTENT: /var/lib/ghost
GHOST_SOURCE: /usr/src/ghost
ERROR: Cannot find the configuration for the current NODE_ENV: development

Ensure your config.js has a section for the current NODE_ENV value and is formatted properly.
[...]

$ tree -L 1
.
├── apps
├── config.js
├── content
├── data
├── images
├── readme.md
└── themes

./config.js
// # Ghost Configuration

// Ghost runs in `development` mode by default.
// Full documentation can be found at http://support.ghost.org/config/

const path = require('path')
const PUBLIC_URL = process.env.PUBLIC_URL
const PORT = process.env.PORT || '2368'
const GHOST_CONTENT = process.env.GHOST_CONTENT
const GHOST_SOURCE = process.env.GHOST_SOURCE

console.log('using this config!')
console.log('GHOST_CONTENT:', GHOST_CONTENT) //  /var/lib/ghost
console.log('GHOST_SOURCE:', GHOST_SOURCE)   //  /usr/src/ghost

// var path = require('path'),
//     config;

config = {
    // ### Production
    // When running Ghost in the wild, use the production environment.
    // Configure your URL and mail settings here
    production: {
        url: 'http://blog.jream.com',
        mail: {},
        database: {
            client: 'sqlite3',
            connection: {
                filename: path.join(process.env.GHOST_CONTENT, '/data/ghost.db')
            },
            debug: false
        },

        server: {
            host: '<IP_ADDRESS>',
            port: '2368'
        },

        paths: {
            contentPath: path.join(__dirname, '/content/'),
        }
    },

    // ### Development **(default)**
    development: {
        // The url to use when providing links to the site, E.g. in RSS and email.
        // Change this to your Ghost blog's published URL.
        url: 'http://localhost:2368',

        // Example refferer policy
        // Visit https://www.w3.org/TR/referrer-policy/ for instructions
        // default 'origin-when-cross-origin',
        // referrerPolicy: 'origin-when-cross-origin',

        // Example mail config
        // Visit http://support.ghost.org/mail for instructions
        // ```
        //  mail: {
        //      transport: 'SMTP',
        //      options: {
        //          service: 'Mailgun',
        //          auth: {
        //              user: '', // mailgun username
        //              pass: ''  // mailgun password
        //          }
        //      }
        //  },
        // ```

        // #### Database
        // Ghost supports sqlite3 (default), MySQL & PostgreSQL
        database: {
            client: 'sqlite3',
            connection: {
                filename: path.join(process.env.GHOST_CONTENT, '/data/ghost-dev.db')
            },
            debug: false
        },
        // #### Server
        // Can be host & port (default), or socket
        server: {
            // Host to be passed to node's `net.Server#listen()`
            host: '<IP_ADDRESS>',
            // Port to be passed to node's `net.Server#listen()`, for iisnode set this to `process.env.PORT`
            port: '2368'
        },
        // #### Paths
        // Specify where your content directory lives
        paths: {
            contentPath: path.join(__dirname, '/content/'),
        }
    },
};

@JREAM
There is no need to remove testing. You can just delete your current config and restart the container to get a fresh config. Then add the paths part as mentioned before.
I think there is no comma after contentPath line and also my config shows a different path:
paths: {
            contentPath: path.join(process.env.GHOST_CONTENT, '/')
        }

Thanks so much to @tianon for making it super clear /var/lib/ghost is where it had to be. I installed in /var/www/ghost cause that's what the install guide said to do :/ Appreciate the hard work anyway guys, thanks for making this available

@JREAM you still struggling? Are you a .js dev? Your config looks super wonky. You've got process.env.GHOST_CONTENT half the time and __dirname joined for the rest, kinda assuming thats your issue. Here's a working config, make sure to chown to ghost or whatever user you're running as and make sure config.js is in var/lib/ghost/config.js. Don't hesitate to message me if you need a hand. Had to upload a .txt cause .js isn't supported.
config.txt

What's going on here ?
It's still not solved !!!
:(

What exactly do you mean? There is a newer image already.

I just deployed a latestghost:alpine image with Host Volume /var/lib/ghost/content and when I try to upload a new Publication cover,
I got this error :
2017-11-20 02:10:24:
2017-11-20 02:10:24:NAME: InternalServerError
2017-11-20 02:10:24:CODE: EACCES
2017-11-20 02:10:24:MESSAGE: EACCES: permission denied, open '/var/lib/ghost/content/images/2017/11/allef-vinicius-180699-1.jpg'
2017-11-20 02:10:24:
2017-11-20 02:10:24:level:normal
2017-11-20 02:10:24:
2017-11-20 02:10:24:InternalServerError: EACCES: permission denied, open '/var/lib/ghost/content/images/2017/11/allef-vinicius-180699-1.jpg'
2017-11-20 02:10:24:    at new GhostError (/var/lib/ghost/versions/1.17.3/core/server/errors.js:9:26)
2017-11-20 02:10:24:    at prepareError (/var/lib/ghost/versions/1.17.3/core/server/middleware/error-handler.js:40:19)
2017-11-20 02:10:24:    at Layer.handle_error (/var/lib/ghost/versions/1.17.3/node_modules/express/lib/router/layer.js:71:5)
2017-11-20 02:10:24:    at trim_prefix (/var/lib/ghost/versions/1.17.3/node_modules/express/lib/router/index.js:315:13)
2017-11-20 02:10:24:    at /var/lib/ghost/versions/1.17.3/node_modules/express/lib/router/index.js:284:7
2017-11-20 02:10:24:    at Function.process_params (/var/lib/ghost/versions/1.17.3/node_modules/express/lib/router/index.js:335:12)
2017-11-20 02:10:24:    at next (/var/lib/ghost/versions/1.17.3/node_modules/express/lib/router/index.js:275:10)
2017-11-20 02:10:24:    at Layer.handle_error (/var/lib/ghost/versions/1.17.3/node_modules/express/lib/router/layer.js:67:12)
2017-11-20 02:10:24:    at trim_prefix (/var/lib/ghost/versions/1.17.3/node_modules/express/lib/router/index.js:315:13)
2017-11-20 02:10:24:    at /var/lib/ghost/versions/1.17.3/node_modules/express/lib/router/index.js:284:7
2017-11-20 02:10:24:    at Function.process_params (/var/lib/ghost/versions/1.17.3/node_modules/express/lib/router/index.js:335:12)
2017-11-20 02:10:24:    at next (/var/lib/ghost/versions/1.17.3/node_modules/express/lib/router/index.js:275:10)
2017-11-20 02:10:24:    at /var/lib/ghost/versions/1.17.3/node_modules/express/lib/router/index.js:635:15
2017-11-20 02:10:24:    at next (/var/lib/ghost/versions/1.17.3/node_modules/express/lib/router/index.js:260:14)
2017-11-20 02:10:24:    at next (/var/lib/ghost/versions/1.17.3/node_modules/express/lib/router/route.js:127:14)
2017-11-20 02:10:24:    at onAPIError (/var/lib/ghost/versions/1.17.3/core/server/api/index.js:286:13)
2017-11-20 02:10:24:    at tryCatcher (/var/lib/ghost/versions/1.17.3/node_modules/bluebird/js/release/util.js:16:23)
2017-11-20 02:10:24:    at Promise._settlePromiseFromHandler (/var/lib/ghost/versions/1.17.3/node_modules/bluebird/js/release/promise.js:512:31)
2017-11-20 02:10:24:    at Promise._settlePromise (/var/lib/ghost/versions/1.17.3/node_modules/bluebird/js/release/promise.js:569:18)
2017-11-20 02:10:24:    at Promise._settlePromise0 (/var/lib/ghost/versions/1.17.3/node_modules/bluebird/js/release/promise.js:614:10)
2017-11-20 02:10:24:    at Promise._settlePromises (/var/lib/ghost/versions/1.17.3/node_modules/bluebird/js/release/promise.js:689:18)
2017-11-20 02:10:24:    at Async._drainQueue (/var/lib/ghost/versions/1.17.3/node_modules/bluebird/js/release/async.js:133:16)
2017-11-20 02:10:24:
2017-11-20 02:10:24:Error: EACCES: permission denied, open '/var/lib/ghost/content/images/2017/11/allef-vinicius-180699-1.jpg'
2017-11-20 02:10:24:    at Error (native)
2017-11-20 02:10:24:
2017-11-20 02:10:24:INFO [2017-11-19 18:07:02] "GET /ghost/" 200 7ms
2017-11-20 02:10:24:INFO [2017-11-19 18:07:03] "GET /ghost/api/v0.1/configuration/" 200 4ms
2017-11-20 02:10:24:INFO [2017-11-19 18:07:03] "GET /ghost/api/v0.1/users/me/?include=roles" 200 42ms
2017-11-20 02:10:24:INFO [2017-11-19 18:07:03] "GET /ghost/api/v0.1/configuration/private/" 200 15ms
2017-11-20 02:10:24:INFO [2017-11-19 18:07:03] "GET /ghost/api/v0.1/settings/?type=blog%2Ctheme%2Cprivate" 200 33ms
2017-11-20 02:10:24:INFO [2017-11-19 18:07:03] "GET /ghost/api/v0.1/notifications/" 200 26ms
2017-11-20 02:10:24:INFO [2017-11-19 18:07:03] "GET /ghost/api/v0.1/configuration/timezones/" 200 19ms
2017-11-20 02:10:24:INFO [2017-11-19 18:07:03] "GET /ghost/api/v0.1/settings/?type=blog%2Ctheme%2Cprivate" 200 30ms
2017-11-20 02:10:24:INFO [2017-11-19 18:07:08] "GET /ghost/" 200 4ms
2017-11-20 02:10:24:INFO [2017-11-19 18:07:08] "GET /ghost/api/v0.1/configuration/" 200 4ms
2017-11-20 02:10:24:INFO [2017-11-19 18:07:08] "GET /ghost/api/v0.1/configuration/private/" 200 17ms
2017-11-20 02:10:24:INFO [2017-11-19 18:07:09] "GET /ghost/api/v0.1/settings/?type=blog%2Ctheme%2Cprivate" 200 34ms
2017-11-20 02:10:24:INFO [2017-11-19 18:07:09] "GET /ghost/api/v0.1/users/me/?include=roles" 200 57ms
2017-11-20 02:10:24:INFO [2017-11-19 18:07:09] "GET /ghost/api/v0.1/notifications/" 200 16ms
2017-11-20 02:10:24:INFO [2017-11-19 18:07:09] "GET /ghost/api/v0.1/configuration/timezones/" 200 17ms
2017-11-20 02:10:24:INFO [2017-11-19 18:07:09] "GET /ghost/api/v0.1/settings/?type=blog%2Ctheme%2Cprivate" 200 30ms
2017-11-20 02:10:24:INFO [2017-11-19 18:07:16] "GET /public/ghost-sdk.min.js?v=71a3c02404" 200 13ms
2017-11-20 02:10:24:INFO [2017-11-19 18:07:16] "GET /" 200 213ms
2017-11-20 02:10:24:INFO [2017-11-19 18:07:16] "GET /assets/built/screen.css?v=2ab82c0260" 200 3ms
2017-11-20 02:10:24:INFO [2017-11-19 18:07:16] "GET /public/ghost-sdk.min.js?v=2ab82c0260" 200 0ms
2017-11-20 02:10:24:INFO [2017-11-19 18:07:16] "GET /assets/js/jquery.fitvids.js?v=2ab82c0260" 200 2ms
2017-11-20 02:10:24:INFO [2017-11-19 18:07:16] "GET /assets/js/infinitescroll.js?v=2ab82c0260" 200 5ms
2017-11-20 02:10:24:INFO [2017-11-19 18:07:19] "GET /content/images/2017/07/Unknown.jpeg" 200 2677ms
2017-11-20 02:10:24:INFO [2017-11-19 18:07:23] "GET /content/images/2017/07/hello-2015466_1920.jpg" 200 6161ms
2017-11-20 02:10:24:ERROR [2017-11-19 18:07:24] "GET /favicon.png" 500 30ms
2017-11-20 02:10:24:
2017-11-20 02:10:24:NAME: InternalServerError
2017-11-20 02:10:24:CODE: ENOENT
2017-11-20 02:10:24:MESSAGE: Could not read image: /var/lib/ghost/content/images/2017/11/UNADJUSTEDNONRAW_small.png
2017-11-20 02:10:24:
2017-11-20 02:10:24:level:normal

and then search engine lead me to here

Yeah, this looks rather like a permissions issue and is not related to the original here.
You should open a new issue then.

Ok ~ thanks


[WIP] Add React Router v4 on the generator

TODOs

Generator : Correct Generator's crud test
Generated Project :

Correct root.test.js, HomeView is now Mount (pass the store Redux)
React Router 4 not working when going through nginx (work fine with localhost)

@thibault-jacquet 👍

Done in ea08ae34e3dffd28f5ef65396920b7b8a9bcc543


Android 30 CloseGuard

Avoids using grey list methods.

I'm curious about our historic usage.  We never use the explicit close. We use the reference leaking to trigger our call to warnIfOpen which is always true because we don't call close.

Also our usage looks different with https://developer.android.com/reference/android/util/CloseGuard referring to reachabilityFence()

@swankjesse Going to land as is, we discussed the form and it's a nice cleanup not relying on reflection that is now actively deprecated.  Will follow up with any further cleanups, for example we could use the full features of CloseGuard instead of our own GC detection.


[ml][ai] Turn on docstring validation

Description
This PR turns on the strict_sphinx docstring validation for the azure-ai-generative and azure-ai-resources packages, including fixing all existing errors to get the documentation builds in compliance. It also makes significant progress in fixing the documentation build errors for azure-ai-ml, but not all errors can be addressed at this time, so the strict_sphinx flag will be set to true in a future PR.
If an SDK is being regenerated based on a new swagger spec, a link to the pull request containing these swagger spec changes has been included above.
All SDK Contribution checklist:

[ ] The pull request does not introduce [breaking changes]
[ ] CHANGELOG is updated for new features, bug fixes or other significant changes.
[ ] I have read the contribution guidelines.

General Guidelines and Best Practices

[ ] Title of the pull request is clear and informative.
[ ] There are a small number of commits, each of which have an informative message. This means that previously merged commits do not appear in the history of the PR. For more information on cleaning up the commits in your PR, see this page.

Testing Guidelines

[ ] Pull request includes test coverage for the included changes.

API change check
APIView has identified API level changes in this PR and created following API reviews.
azure-ai-ml


pattern view cmd

Description
This PR fixes #2624
Notes for Reviewers

[x] view pattern by name or id
[x] json, yaml(default) available as output formats
[x] view all patterns
[x] pretty print the patterns (indentation)
[ ] token flag

Signed commits

[x] Yes, I signed my commits.

Regarding the token flag, should this be added only for the view command or as a persistent to the pattern (Since the other sub-commands also need token)

@aneeshnema as a requirement for all pattern commands, yes. In the future it may be that some patterns are generally available to all users of a Meshery system, but even then, the user would need to auth to Meshery Server in order to list, view, apply, delete them.

@leecalcote @aneeshnema should this PR be modified from our latest discussion on the development call? I mean the ID vs name we talked about.

@navendu-pottekkat, currently, the pattern command also tries to get the token path from the environment variable MESHERY_AUTH_TOKEN, making the token flag compulsory will stop users from using the environment variable way to set token path. (decreasing the ease of use)
// @leecalcote


Revert "engine landing page (v2)"

Reverts thirdweb-dev/dashboard#2291

PR-Codex overview
This PR updates the landing page layout and content for the Engine section.
Detailed summary

Updated section heading design in section-heading.tsx
Replaced product images with partner logos in engine.tsx
Adjusted layout and content in engine.tsx
Added new icon section items in engine.tsx
Updated descriptions and titles for landing cards in engine.tsx

The following files were skipped due to too many changes: pages/engine.tsx

✨ Ask PR-Codex anything about this PR by commenting with /codex {your question}

📝 Changed routes:

/engine

(view full size)

Commit ca0d635c545b819a675ea6c2156aaba0d0fd07ca (https://thirdweb-a2iylx0ap.thirdweb-preview.com).


fix: typo in TUTORIAL_KOREAN.md

Is this fix okay? Or leave a comment if not.

The original is correct. The backticks are around CollectionMembership only since that's the type name (singular, not plural).


impl ComponentFunction for fn(props: Properties<T>) -> Element

Feature Request
We have dioxus-free-icons library, and for Dioxus v0.6.0-alpha.4 it doesn't compile.
P.S. see this issue.
For code:
#[component]
pub fn AccordionTrigger(props: AccordionTriggerProps) -> Element {
  let div_class = cn(&[
    "flex flex-1 items-center justify-between py-4 font-medium transition-all hover:underline".into(),
    props.class.unwrap_or("".into()),
  ]);
  let icon_class = cn(&[
    "h-4 w-4 shrink-0 transition-transform duration-200",
    if *props.is_open.read() { "rotate-180" } else { "" },
  ]);

  rsx! {
    div {
      class: "flex",
      button {
        class: "{div_class}",
        onclick: move |_| { *props.is_open.write() = !*props.is_open.read(); },
        {props.children},
        // here we go
        Icon {
          icon: HiChevronDown,
          class: "{icon_class}"
        }
      }
    }
  }
}

it says:
error[E0277]: `Component<_>` is not implemented for `fn(IconProps<HiChevronDown>) -> Option<dioxus_core::nodes::VNode> {Icon::<HiChevronDown>}`
    = help: the trait `ComponentFunction<_, _>` is not implemented for fn item `fn(IconProps<HiChevronDown>) -> Option<dioxus_core::nodes::VNode> {Icon::<HiChevronDown>}`
    = note: Components are functions in the form `fn() -> Element`, `fn(props: Properties) -> Element`, or `#[component] fn(partial_eq1: u32, partial_eq2: u32) -> Element`.
    = note: You may have forgotten to add `#[component]` to your function to automatically implement the `ComponentFunction` trait.
note: required by a bound in `dioxus::prelude::fc_to_builder`
   --> /home/titoffklim/.cargo/git/checkouts/dioxus-1e619ce595d3799d/e0575b3/packages/core/src/properties.rs:110:36
    |
110 | pub fn fc_to_builder<P, M>(_: impl ComponentFunction<P, M>) -> <P as Properties>::Builder

Implement Suggestion
So I'm guessing we need to manually implement ComponentFunction for Properties<T>

As long as AccordionTriggerProps implements Properties, it should implement that trait. I agree with marc, this is probably a version issue. The version of diouxs-free-icons you are pulling in is probably implementing a different version of the Properties trait than dioxus needs. Could you share the complete code that causes this error (with the cargo.toml)

Oh... I just created a project from scratch and everything compiled.
I'm so sorry for wasting your time. Thank for your patience!


Display who triggered the build

Would like to add display of who caused the build and maybe "weather" status in the tooltip.
Maybe even a way to display a link to the change list?

Decided not to do this one. The information is easily accessible if the user followed the provided link. User, once exposing the popup via the Q key, can easily type 'o' on their keyboard to open the link. They can get the info they need from the page.


Feature/purpose

Description
added the purpose section in the HomePage
Fixes # 282
Type of change

[x] New feature (non-breaking change which adds functionality)

Checklist:

[x] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] Any dependent changes have been merged and published in downstream modules

Reviewer: Vinit Shahdeo

Please review and merge this PR @amaaniqbal @vinitshahdeo .

Please remove the unnecessary files and images and commit only with the required ones.

The required changes are made @amaaniqbal

Looks better! But it seems you haven't pulled the latest changes before committing. The tagline and the faq section issues are being undone by your change, and creating conflicts.
Try pulling the latest changes, and don't add new version of bootstrap. v4.4.1 is fine. The rest of the changes looks good to me.


Implementing a catch-all path

Hi, I'm loving High Voltage so far - awesome gem from Thoughtbot :smile:
I'm trying to implement a standard catch-all on my routes (Rails 4) that directs you to the homepage:
match "*path", to: "home#index", via: :all

I noticed that when I go to my static High Voltage pages though, they redirect to that catch-all. How can I tweak the High Voltage controller to prevent this from happening?
Thanks

Got it - followed the steps for creating a pages controller under "Override" in the Readme, included HighVoltage::StaticPage in that controller and just added a method to override the "invalid_page" method and have it redirect to root_url instead (or any other catch-all redirect).