Update Cargo.lock

Description of change
I came across this error while building the Arch Linux package:
error: the lock file /build/cargo-shuttle/src/cargo-shuttle/Cargo.lock needs to be updated but --locked was passed to prevent this
If you want to try to generate the lock file without accessing the network, remove the --locked flag and use --offline instead.

This is due to the usage of --locked flag and it is necessary for reproducible builds as stated in the wiki.
This PR is simply the output of cargo generate-lockfile for updating Cargo.lock.
How Has This Been Tested (if applicable)?
Tested locally with --locked flag.

Arch Linux package is updated with this patch applied: https://gitlab.archlinux.org/archlinux/packaging/packages/cargo-shuttle/-/commit/80eec76ed7627091cf2310e8ca7f2c6bd076426a


Unique subtitles for every guild

#10
While the use of a single text file, i.e, subreddit.txt is efficient and reliable, we do have to remember that this bot is made with the vision of extending its services to more than one server.
So, the use of a single text file for storing subreddit names for all servers is inconsistent, mainly because adding/removing/modifying the list will cause the changes to be reflected across all guilds.
So the proposed solution is to use a .json file where the key is the guild id in string and value will be an array of subreddit names to be used in that guild.
Ex :

{ "<guild_1_id>" : "[<subreddit_1>,
                                <subreddit_2>,
                                <subreddit_3>,....]",
"<guild_2_id>" :  "[......]",
}

@Rajrup911 can you take this up?

yeah


Number of Books on the page in "Books" view

Describe the feature you'd like
Would be great to have ability to change the number of Books on the page in "Books" view.
Describe the benefits this would bring to existing BookStack users
Besides the obvious ones... In Telegram's InstantView it looks horrible and works incorrect, so for me personally, it is easier to change the number of books on the page rather than trying to figure out it in InstantView which twisted and presented "as is" and no support.
Can the goal of this request already be achieved via other means?
Probably.
Have you searched for an existing open/closed issue?

[X] I have searched for existing issues and none cover my fundemental request

How long have you been using BookStack?
1 to 5 years
Additional context
No response

Thanks for the request @jamescash120.
If we add a setting for this, there would become an expectation for something similar for other lists (Shelves, Shelves contents, maybe the sidebar/non-main lists). I'm not keen on going in the direction of exposing controls/options for every list. Maybe could at least group these up to shared settings. There's also the possibility of exposing via user-side controls but performance can come into question.

Besides the obvious ones...

Can you describe the obvious ones? This kind of option has had little demand in the past so it'll be good to detail the actual benefits as I have not observed much user need for this.

In Telegram's InstantView it looks horrible and works incorrect, so for me personally, it is easier to change the number of books on the page rather than trying to figure out it in InstantView which twisted and presented "as is" and no support.

I'm not familiar with Telegram in any way. Can you detail the issue and how such an option would help address that scenario? I don't really look to make changes to fit the concerns of other platforms but that are existing customizations/hacks that may be able to help with embedding scenarios.

Since there's been no follow up I'll go ahead and close this off.


[WIP] Add Docker environment for easy setup of the project

Issue: https://github.com/grumpyp/aixplora/issues/42

The idea is that someone who needs to set up the project initially they can just run docker compose up which should build everything for them
Since some of us are facing issues installing the front-end, I am trying to move the node_modules folder from the container to the local machine. This way it will help with the IDE/LSP suggestions.
Doing so actually installs the packages every time when we spin up our container which is clumsy. But the subsequent installations take less time because they're already installed the first time.

Issues:
The application runs but there are some errors in the log

after running docker compose up  aix-fe  | > start:preload
  aix-fe  | > cross-env NODE_ENV=development TS_NODE_TRANSPILE_ONLY=true webpack --config ./.erb/configs/webpack.config.preload.dev.ts
  aix-fe  |
  aix-fe  |
  aix-fe  | > start:main
  aix-fe  | > cross-env NODE_ENV=development electronmon -r ts-node/register/transpile-only .
  aix-fe  |
  aix-fe  | Failed to move to new namespace: PID namespaces supported, Network namespace supported, but failed: errno = Operation not permitted
  aix-fe  | [electronmon] waiting for a change to restart it
  aix-fe  | [electronmon] app exited with code null, waiting for change to restart it
  aix-fe  | [131:0100/000000.895638:ERROR:zygote_linux.cc(661)] write: Broken pipe (32)
  a

Navigating to the UI

Todo

[ ] modify readme files

The following error show's up here:
(venv) patrickgerard ~/Documents/GitHub/aixplora [docker1] $ docker compose build
[+] Building 32.1s (23/27)
 => [aixplora-frontend internal] load build definition from Dockerfile                                                                                0.1s
 => => transferring dockerfile: 32B                                                                                0.0s
 => [aixplora-backend internal] load build definition from Dockerfile                                                                                0.0s
 => => transferring dockerfile: 32B                                                                                0.0s
 => [aixplora-frontend internal] load .dockerignore                                                                                0.0s
 => => transferring context: 2B                                                                                0.0s
 => [aixplora-backend internal] load .dockerignore                                                                                0.0s
 => => transferring context: 2B                                                                                0.0s
 => [aixplora-frontend internal] load metadata for docker.io/library/node:18                                                                                1.6s
 => [aixplora-backend internal] load metadata for docker.io/library/python:3.8.12-slim-buster                                                                          1.5s
 => [auth] library/python:pull token for registry-1.docker.io                                                                                0.0s
 => [auth] library/node:pull token for registry-1.docker.io                                                                                0.0s
 => [aixplora-frontend internal] load build context                                                                                8.1s
 => => transferring context: 6.83MB                                                                                7.7s
 => [aixplora-frontend 1/9] FROM docker.io/library/node:18@sha256:8cdf7234449f35e579f7491137807ddb3a089f028862f7ab69af437cc9f47ff1                                     0.0s
 => [aixplora-backend 1/8] FROM docker.io/library/python:3.8.12-slim-buster@sha256:26ab58f6b8936fe59303b0ca0e915d5f9e071ef8b9bf7b3d716b4068f11443dc                    0.0s
 => [aixplora-backend internal] load build context                                                                                0.1s
 => => transferring context: 9.57kB                                                                                0.1s
 => CACHED [aixplora-backend 2/8] WORKDIR /usr/src/app                                                                                0.0s
 => CACHED [aixplora-backend 3/8] RUN apt-get update && apt-get install -y build-essential                                                                             0.0s
 => CACHED [aixplora-backend 4/8] COPY backend/requirements.txt .                                                                                0.0s
 => CANCELED [aixplora-backend 5/8] RUN pip install --no-cache-dir -r requirements.txt                                                                                30.0s
 => CACHED [aixplora-frontend 2/9] WORKDIR /usr/src/app                                                                                0.0s
 => CACHED [aixplora-frontend 3/9] RUN apt-get update && apt-get install -y build-essential python                                                                     0.0s
 => CACHED [aixplora-frontend 4/9] RUN apt-get update && apt-get install     git libx11-xcb1 libxcb-dri3-0 libxtst6 libnss3 libatk-bridge2.0-0 libgtk-3-0 libxss1 lib  0.0s
 => CACHED [aixplora-frontend 5/9] COPY . .                                                                                0.0s
 => CACHED [aixplora-frontend 6/9] RUN chown -R node /usr/src/app                                                                                0.0s
 => [aixplora-frontend 7/9] RUN npm install                                                                                21.3s
 => ERROR [aixplora-frontend 8/9] RUN chown root /usr/src/app/node_modules/electron/dist/chrome-sandbox                                                                0.3s
------
 > [aixplora-frontend 8/9] RUN chown root /usr/src/app/node_modules/electron/dist/chrome-sandbox:
#0 0.297 chown: cannot access '/usr/src/app/node_modules/electron/dist/chrome-sandbox': No such file or directory
------
failed to solve: executor failed running [/bin/sh -c chown root /usr/src/app/node_modules/electron/dist/chrome-sandbox]: exit code: 1


Update dependencies

Coverage remained the same at 77.886% when pulling 53cd2df82a92243c7cc419ccff1bff48c6f467b3 on elas7:deps into 5cf35b8facb39e093c933e56cc4d0929d3f7be13 on ModusCreateOrg:master.


Pull request extensions

Hi,
Here's a proposed change to have an extension mechanism which would allow to easily add new extensions without requiring tight coupling with the core of the exporter.
The first commit is about adding that extension mechanism.
The second one shows how such an extension can be implemented.
We actually use the layer extension on our side, we think of layers just like you would in Gimp or Photoshop. This allows us to group nodes into layer and then filter them out (think about several pass rendering algorithms, defining subsets of scene so that you can group several scenes in the same glTf file ...)
Let me know if that could be interesting to merge moving forward and if anything should be addressed.
Thanks

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

Note that we are in the process of merging this exporter with an importer, in https://github.com/KhronosGroup/glTF-Blender-IO, and will likely not be adding new features to this repository. This approach does seem like one possible way to solve https://github.com/KhronosGroup/glTF-Blender-IO/issues/7 — you may want to leave a comment there, although I am not sure we're quite ready for a PR on that issue without discussion. Thanks! /cc @McNopper

I haven't reviewed the code here in detail, but +1 for the desire to have other, unrelated Blender plugins be able to leave extension data for this plugin to find and export.  I have a vendor extension that I would like to support externally to this project or its replacement, and I would love the glTF exporter to be able to export the extension data without code coupling to that other plugin.

@lemirep Unfortunately I'll need to close this, new feature development will be happening in the other repository. If you're still interested in this feature, I'd recommend opening an issue on the glTF-Blender-IO repository to discuss the best way to approach it, now that the importer/exporter is included in Blender 2.8 by default.


A Reflection should provide an instance of a ReflectionClass that reflects the class or object instance it reflects. Implement a new method Reflection->reflectionClass()

Implementations of the  Darling\PHPReflectionUtilities\interfaces\utilities\Reflection interface should provide an instance of a \ReflectionClass that reflects the class or object instance the Darling\PHPReflectionUtilities\interfaces\utilities\Reflection reflects.
Implement a new method Reflection->reflectionClass() which will return an instance of a \ReflectionClass that reflects the same class as the Darling\PHPReflectionUtilities\interfaces\utilities\Reflection.

resolved in 1cf514c6d29766e666dd9091d97ae69e21a1317f

resolved in 1cf514c6d29766e666dd9091d97ae69e21a1317f


Add support for WorkloadIdentity auth

Implement Workload Identity Federation authentication - something like https://github.com/MicrosoftDocs/microsoft-authentication-library-dotnet/blob/main/msal-dotnet-articles/acquiring-tokens/web-apps-apis/workload-identity-federation.md
This issue is not aiming to solve a single use case such as the Azure.Identity implementation which only supports Kubernetes: https://learn.microsoft.com/en-us/dotnet/api/azure.identity.workloadidentitycredential?view=azure-dotnet

@coolhome Thanks for the (somewhat duplicate but more detailed) issue! I started looking at this recently but haven't gotten a working implementation yet. It's next on the list of new features :)
Do you have a clear use case in mind apart from Azure DevOps, GitHub or Kubernetes?

My only I have is for Azure DevOps now that my ARM Service Connection is workload identity.


The package is missing published types (regression)

Describe the bug
Since 0.0.1-beta.147 the build/types/index.d.ts file only contains the license header and no actual types.
Your Example Website or App
N/A
Steps to Reproduce the Bug or Issue

Install the package
cat<EMAIL_ADDRESS>
Expected behavior
The types are published as before (last good version was 0.0.1-beta.146)
Screenshots or Videos
No response
Platform

OS: Any
Browser: Any
Version: 0.0.1-beta.147-0.0.1-beta.150

Additional context
No response

Use @tanstack/react-router instead. https://github.com/TanStack/router/blob/beta/packages/router/src/index.ts#L3

Fixed


ChangeLog parameter unresolved for ChangeSet id in SQL Formatted ChangeLog

Environment
Liquibase Version: 4.3.x
Description
ChangeLog parameter are not expanded (resolved) in ChangeSet id in SQL Formatted ChangeLog.
Steps To Reproduce
Define a ChangeLog _changelog.xml_with a property and include the same changeset written in XML format and another one written in SQL Format
<?xml version="1.0" encoding="UTF-8"?>
<databaseChangeLog
  xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xmlns:pro="http://www.liquibase.org/xml/ns/pro"
  xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-4.2.xsd">
    <property  name="myprop"  value="myval"/>
    <include file="test.sql" relativeToChangelogFile="true"/>
    <include file="test.xml" relativeToChangelogFile="true"/>
</databaseChangeLog>

test.sql:
--liquibase formatted sql
--changeset mturra:ins_${myprop}

select 1 from dual;

test.xml
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
                   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                   xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.9.xsd">
    <changeSet id="ins_${myprop}" author="mturra">
        <sql>
            select 1 from dual
        </sql>
    </changeSet>
</databaseChangeLog>

Launch liquibase update.
Actual Behavior
On DATABASECHANGELOG I get two row:

the row with filename text.xml have id value "ins_myval"
the row with filename text.sql have id value "ins_${myprop}"

Expected/Desired Behavior
The same behavior for changeset written in different format.

Patch:
Index: liquibase-core/src/main/java/liquibase/parser/core/formattedsql/FormattedSqlChangeLogParser.java
<+>UTF-8
===================================================================
diff --git a/liquibase-core/src/main/java/liquibase/parser/core/formattedsql/FormattedSqlChangeLogParser.java b/liquibase-core/src/main/java/liquibase/parser/core/formattedsql/FormattedSqlChangeLogParser.java
--- a/liquibase-core/src/main/java/liquibase/parser/core/formattedsql/FormattedSqlChangeLogParser.java	(revision 10a0c509c59401e9351cf7d134b4bc671b5d500f)
+++ b/liquibase-core/src/main/java/liquibase/parser/core/formattedsql/FormattedSqlChangeLogParser.java	(date<PHONE_NUMBER>566)
@@ -207,10 +207,11 @@
                        logicalFilePath = changeLog.getLogicalFilePath ();
                     }
                     String dbms = parseString(dbmsPatternMatcher);
-
+                    String changeSetId = changeLogParameters.expandExpressions(changeSetPatternMatcher.group(2), changeLog);
+                    String author = changeSetPatternMatcher.group(1);

                     changeSet =
-                       new ChangeSet(changeSetPatternMatcher.group(2), changeSetPatternMatcher.group(1), runAlways, runOnChange, logicalFilePath, context, dbms, runWith, runInTransaction, changeLog.getObjectQuotingStrategy(), changeLog);
+                       new ChangeSet(changeSetId, author, runAlways, runOnChange, logicalFilePath, context, dbms, runWith, runInTransaction, changeLog.getObjectQuotingStrategy(), changeLog);
                     changeSet.setLabels(new Labels(labels));
                     changeSet.setFailOnError(failOnError);
                     changeLog.addChangeSet(changeSet);
@@ -363,4 +364,4 @@
         }
         return resourceAsStream;
     }
-}
+}

\ No newline at end of file

Hi @matteoturra Thanks for creating this issue and a PR to fix it.  We will add it to the list of issues that we are processing.

Hi @matteoturra Just curious of the use case for what you are trying to accomplish for dynamically setting the changeset id.
I understand that it works for xml but not for a formatted sql changeset which is why this issue is highlighted.  I'd like to take a step back and understand what your requirements are.

Hi, this is my use case. I need to launch the same sql script on the same
oracle user (schema) from different instances. Usually I run liquibase with
a connection to user A to give grants to user oracle B. The same script run
to give the same grants to user oracle C and so on....
The script has the oracle user to give the grant to in a parameter
${targetUsername} and I use this parameter in the changeset ID too, so
liquibase can tell script running one from the other instance.
Do you have any other suggestions to manage this scenario?
Thanks
Matteo
Il giorno mer 26 mag 2021 alle ore 19:19 Mike Olivas <
@.***> ha scritto:

Hi @matteoturra https://github.com/matteoturra Just curious of the use
case for what you are trying to accomplish for dynamically setting the
changeset id.
I understand that it works for xml but not for a formatted sql changeset
which is why this issue is highlighted. I'd like to take a step back and
understand what your requirements are.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/liquibase/liquibase/issues/1852#issuecomment-848962685,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAH45IJWNLJC43CBVDVMO73TPUUTXANCNFSM45GUUE7A
.

@molivasdat  @matteoturra  i have the same need.
Basically I need to deploy the same code in the same database under a test client. So Client A and Client B will have 2 separate sets of deployed changes coming from the same code base.
This is to allow some beta functionality to go in the second implementation without keeping + synchronizing the main code.
I ve tested the XML changeset and it is doing what i need but all my files (approx 3000 files) are in SQL format.
I ve tested in 3.4.2 , 4.3.4 and 4.5.0 and it works in all three for XML but does not work in any for SQL.
When should we expect a fix in the SQL format ?

Hi, do you plan to fix it? This bug blocks the full implementation of liquibase in my organization.
My use case is that i have one file, and  many scenario to deploy the file. I need to set param depends on scenario.

@mar-deb Apologies for delays on this; we will review with our team. Stay tuned.

This should have been resolved in v4.7.1. What version are you seeing problems with, @mar-deb ?

closed for now; please re-open if needed thanks


doc: add documentation for cycles

Should include:

simple cycle + example
magic variables (once merged)

This is totally done!


Parse more rules and tests

Hi,
I saw you asked for help over at https://github.com/JuliaSymbolics/Symbolics.jl/issues/58#issuecomment-1094339557, so I thought I give it a shot.
Contents
Apologize up front, but I already mixed a few tasks in this PR. If you want, I can split them up into two PRs if desired.
This PR adds

the tests from the Rubi site
a parser to read the tests into WExpr
a parser to read the rules into WExpr (should substitute all_rules, see below)
a script to extract a list of (hopefully) all functions that will be needed to implement the rules with

I think right now all_rules does the parsing into WExpr and immediately applies syntax transformation to obtain code that can be used for Metatheory.jl. Given there are lots of rules and even more tests to parse, I thought it might be better to divide the parsing into three stages:

Parse rules/tests into MathLink.WExprs.
Unwrap the rules/tests, e.g. strip the If[$LoadShowStep, ... clauses etc.
Apply syntax transformations to the actual rules and their conditions so that we can generate the Julia rules with Metatheory.jl.

This way you only have to do the expensive step of parsing the expressions using the Wolfram Engine once and then can cache the result. Later you can then (possibly with multi-threading; might only be relevant for the tests) repeatedly apply the unwrapping and syntax transformations as needed. I think this makes it also quite convenient for development.
Questions

Which version of Rubi did you upload in this repo? The version appearing here https://github.com/RuleBasedIntegration/Rubi/blob/master/Rubi/IntegrationRules/1 Algebraic functions/1.1 Binomial products/1.1.1 Linear/<IP_ADDRESS> (a%2Bb x)^m.m (last updated 4 years ago) has the rules organized nicely in one lines each (similar to the tests). This makes it simpler to parse and also avoids to manually edit some files to remove newlines in If[$LoadShowStep, ... clauses.
Do you already have a strategy on how to translate the rules to Metatheory and Symbolics compatible syntax?

Other
Lastly, regarding your concerns about the usefulness and effectiveness of this pkg: The rules and tests have to be parsed anyways if someone wants to port Rubi to Julia. So I think this already justifies this package :) Whether using MathLink is effective or not can only be judged on a concrete implementation.

This PR is finished now.
I added the files gen/scripts/parse_rules.jl (replaces SymbolicRubiGen.all_rules) and gen/scripts/parse_tests.jl which do now the parsing, unwrapping and rewriting in separate steps.
Right now this branch recognizes 6923 rules and 72945 tests.
When refactoring all_rules I disabled a few of the replacement functions in fdict, e.g. Power, Blank, Pattern, Optional, since they either caused errors or slowed down everything (espcially Power => SymbolicUtils.Pow). This should be addressed next when implementing the mathematica-to-julia transformations.
Regarding this question:

Do you already have a strategy on how to translate the rules to Metatheory and Symbolics compatible syntax?

I extended gen/scripts/gather_functions.jl so that it now also records which rules file and test file require which functions to be implemented, sorted from least to most. The output is written into gen/scripts/required_functions.md. Perhaps a starting point for translating rules would be to look at this file and implement those of the rules and test files that need the least to be to work. This way we could get tests working as soon as possible and then incrementally add more.
I also gathered notes on some of the functions. Perhaps they can be of help too.
# likely to require type from Symbolics.jl
SqrtNumberQ
SqrtNumberSumQ

# no functions but dummy variables
tmp
f_
g_
F_
G_
F
G
H
f
g
lst

# inert/lazy trigonometric functions
sin
cos
sec
csc
tan
cot

# auxiliary functions for logging etc
ShowStep
Block

# requires more attention
PosQ[u] # (* If u is not 0 and has a positive form, PosQ[u] returns True, else it returns False. *)
NegQ # negation of PosQ

# Some Qs are defined inside the IntegartionRules folder
# Need to account for this when writing rules
IntegerQ
IntBinomialQ
IntLinearQ
IntQuadraticQ

Lastly, I also noted that Sympy already uses Rubi for their integrate method: https://github.com/sympy/sympy/tree/master/sympy/integrals/rubi. See also https://github.com/sympy/sympy/wiki/Rubi-parsing-guide#parsing-tests. Interestingly, it seems they do some preprocessing steps before they actually parse it into Sympy syntax.

Thanks for merging.
I am also not an expert in either of those packages nor in e-graph theory. But just parsing the rules seems to be a funny exercise :)
Indeed, there are a lot of functions listed, I counted around 300 in here: https://github.com/fgerick/SymbolicRubi.jl/blob/main/gen/scripts/required_functions.txt
If I understand correctly then most of those are implemented in
https://github.com/fgerick/SymbolicRubi.jl/blob/main/gen/Rubi/IntegrationUtilityFunctions.m
in terms of (more or less) atomic/native Mathematica functions.
Perhaps we can tackle the problem by first figuring out which of the basic Mathematica methods we already have and which ones we need to implement.
We can then implement those in Symbolics.jl, SymbolicUtils.jl.
Once that is done we can continue by implementing the rest just as it is done in IntegrationUtilityFunctions.m. Not saying that this will be the best performant solution, but optimizing can always be done later.
Aside: Given the number of rules (and tests), I can imagine that this might take a while jitting. But I just read here https://symbolics.juliasymbolics.org/dev/manual/io/ that Symbolics.jl already provides support for serialization of expressions so that you can package them into a sysimage. I think that can be pretty useful :)

... that touches the base of Symbolics.jl or SymbolicUtils.jl that are not very mature yet.

Here is one issue I opened so far: https://github.com/JuliaSymbolics/Symbolics.jl/issues/622


fix: Allow TagUser to SelfManagement policy

Description
Adding the following permissions to IAM users created from the iam-group-with-policies module.
"iam:ListUserTags"
"iam:TagUser"
"iam:UntagUser"

For instance, user will now be able to label their own access keys.
Motivation and Context
https://github.com/terraform-aws-modules/terraform-aws-iam/issues/286
How Has This Been Tested?

[ ] I have updated at least one of the examples/* to demonstrate and validate my change(s)
[ ] I have tested and validated these changes using one or more of the provided examples/* projects

[ ] I have executed pre-commit run -a on my pull request

This PR is included in version 5.5.1 :tada:


allow user to config logging for broker

Is your feature request related to a problem? Please describe.
Currently users can not configure logging properties and that may not suit specific needs.
Such as when a broker continues to log large amount of warning messages over a period of
time and causes PV to fill up.
Describe the solution you'd like
Users can change the broker logging configuration by providing their own in a configmap or secret. The name of the configmap
or secret must have the suffix -logging-config. There must be one entry in the configmap or secret. The key of the entry
must be logging.properties and the value must of the full content of the logging configuration. (The broker is using slf4j with
log4j2 binding so the content should be log4j2's configuration in Java's properties file format).
Then you need to give the name of the configmap or secret in the broker custom resource. For example
for configmap
apiVersion: broker.amq.io/v1beta1
kind: ActiveMQArtemis
metadata:
  name: broker
  namespace: activemq-artemis-operator
spec:
spec:
  deploymentPlan:
    size: 1
    image: placeholder
    extraMounts:
      configMaps:
      - "my-logging-config"

for secret
apiVersion: broker.amq.io/v1beta1
kind: ActiveMQArtemis
metadata:
  name: broker
  namespace: activemq-artemis-operator
spec:
spec:
  deploymentPlan:
    size: 1
    image: placeholder
    extraMounts:
      secrets:
      - "my-logging-config"

Describe alternatives you've considered
Optional. A clear and concise description of any alternative solutions or features you've considered.
Additional context
Optional. Add any other context or screenshots about the feature request here.

I guess we don't care if there is more in the secret, but we do expect one key, other keys are irrelevant. Thinking that we don't need to restrict it to one key: " There must be one entry in the configmap or secret".  may be an unnecessary, and if we enforce this in code, maybe we should not.


Highlight all Python operators

Description of the Change
Python operators, except for the logical operators ('and', 'or', 'not'), which were already purple, are highlighted in blue.
Alternate Designs
I tried making the operators bold instead and this was ugly. Blue and bold together were also ugly.
Benefits
It makes it easier to see what goes on in complex mathematical expressions.

Apparently this should use a different color for consistency with other languages.


songs don't load in modded multiplayer with FocusMod installed

Could you provide more details? I just downloaded Multiplayer extensions, opened a server and I could start a custom song just fine.

Could you provide more details? I just downloaded Multiplayer extensions, opened a server and I could start a custom song just fine.

huh... i was figuring out why i couldnt load into multi songs and ended up deleteing every mod one by one and it worked as soon as i got rid of focusmod, maybe its related to me being on "-vrmode oculus"?

huh... i was figuring out why i couldnt load into multi songs and ended up deleteing every mod one by one and it worked as soon as i got rid of focusmod, maybe its related to me being on "-vrmode oculus"?

Shouldnt be, do you have any other multiplayer related mods installed other than multiplayer extensions? Were you hosting the server or did you join it? Was it a map that you already had?

Shouldnt be, do you have any other multiplayer related mods installed other than multiplayer extensions? Were you hosting the server or did you join it? Was it a map that you already had?

it happened no matter what, even if i was in a lobby by myself. and i tried it with only core mods and multi extension.

it happened no matter what, even if i was in a lobby by myself. and i tried it with only core mods and multi extension.

Thats Weird. Do you have the latest version of FocusMod? (Updated today) as well as MP extensions?

Thats Weird. Do you have the latest version of FocusMod? (Updated today) as well as MP extensions?

yes i have all the most recent versions. the game goes into an indefinite black screen once the game "starts" a song.

yes i have all the most recent versions. the game goes into an indefinite black screen once the game "starts" a song.

I just tried it again with all combinations of HUD options I'm presented in the lobby and couldnt reproduce your issue.
Do you use Counters+? If so, any thirdparty counters that you have enabled in it? What combinations of hud options do you have on / off in the lobby?

I just tried it again with all combinations of HUD options I'm presented in the lobby and couldnt reproduce your issue.
Do you use Counters+? If so, any thirdparty counters that you have enabled in it? What combinations of hud options do you have on / off in the lobby?

i dont have counters+, and tried every combination of hud options except disabling it altogether. i will try testing it again once ive finished this multi.

i dont have counters+, and tried every combination of hud options except disabling it altogether. i will try testing it again once ive finished this multi.

Just removed Counters+ and tried the same thing again, also having tried "only hide in VR" on / off, still able to load into custom songs just fine.

Just removed Counters+ and tried the same thing again, also having tried "only hide in VR" on / off, still able to load into custom songs just fine.

i have tried with only these mods and it still doesn't work, i have also noticed the hud doesn't disappear at all with "only hide in vr" on. if you're not testing on oculus, im sure thats the reason it works for you.

i have tried with only these mods and it still doesn't work, i have also noticed the hud doesn't disappear at all with "only hide in vr" on. if you're not testing on oculus, im sure thats the reason it works for you.

I am indeed not testing on Oculus and dont own any Oculus headset so I have no easy way to test this, I know various people who play on an Oculus device tho, I will see if I can get one of them to try and see if they are able to replicate it and will let you know about the results.

i have also noticed the hud doesn't disappear at all with "only hide in vr" on

That is in Multiplayer? I quite honestly never tested multiplayer, so that is entirely possible, it should work fine in solo tho assuming there is no weird Oculus quirks.

I am indeed not testing on Oculus and dont own any Oculus headset so I have no easy way to test this, I know various people who play on an Oculus device tho, I will see if I can get one of them to try and see if they are able to replicate it and will let you know about the results.

i have also noticed the hud doesn't disappear at all with "only hide in vr" on

That is in Multiplayer? I quite honestly never tested multiplayer, so that is entirely possible, it should work fine in solo tho assuming there is no weird Oculus quirks.

no, that's in singleplayer.

no, that's in singleplayer.

Alright, I'll try to look into these things, thanks for making me aware.

Alright, I'll try to look into these things, thanks for making me aware.

huh... i was figuring out why i couldnt load into multi songs and ended up deleteing every mod one by one and it worked as soon as i got rid of focusmod, maybe its related to me being on "-vrmode oculus"?

Same thing happened to me, although I didn't know what caused it. Oh well until its fixed I guess I'm gonna have to remove the focus mod.

huh... i was figuring out why i couldnt load into multi songs and ended up deleteing every mod one by one and it worked as soon as i got rid of focusmod, maybe its related to me being on "-vrmode oculus"?

Same thing happened to me, although I didn't know what caused it. Oh well until its fixed I guess I'm gonna have to remove the focus mod.

huh... i was figuring out why i couldnt load into multi songs and ended up deleteing every mod one by one and it worked as soon as i got rid of focusmod, maybe its related to me being on "-vrmode oculus"?

I got the same thing happening to me, although I don't know if its caused by the focus mod yet.

huh... i was figuring out why i couldnt load into multi songs and ended up deleteing every mod one by one and it worked as soon as i got rid of focusmod, maybe its related to me being on "-vrmode oculus"?

I got the same thing happening to me, although I don't know if its caused by the focus mod yet.

@Draegon366 @Hexnet111 Seeing as the plugin does not really work in Multiplayer anyways I've made a small
change which explicitly disables it for MP. Could you try and see if this resolves the issue?
FocusMod.zip

@Draegon366 @Hexnet111 Seeing as the plugin does not really work in Multiplayer anyways I've made a small
change which explicitly disables it for MP. Could you try and see if this resolves the issue?
FocusMod.zip

Had somebody install MP extensions and FocusMod, he is on -vrmode oculus and could load into custom songs just fine as well.

Had somebody install MP extensions and FocusMod, he is on -vrmode oculus and could load into custom songs just fine as well.

that is very strange, but the modified dll does work.

that is very strange, but the modified dll does work.

Alright, I guess I'll release that as an update once I figured out the hide in vr issue. Thanks for the feedback.

Alright, I guess I'll release that as an update once I figured out the hide in vr issue. Thanks for the feedback.

"hide only in vr" now seems to be properly hiding it, but both inside and out of vr. I tested this with every combination of focusmod settings and it didn't change anything.

"hide only in vr" now seems to be properly hiding it, but both inside and out of vr. I tested this with every combination of focusmod settings and it didn't change anything.

but both inside and out of vr

Are you using the official Camera Plus or my modified one?

but both inside and out of vr

Are you using the official Camera Plus or my modified one?


_s3FineUploader2.default.FineUploader is not a constructor

Type of issue

[ ] Bug report
[ ] Feature request
[X] Support request

Uploader type

[ ] Traditional
[X] S3
[ ] Azure

Support Request
Fine Uploader version
5.5.1
Question
I'm trying to use the core library, as I have no use for the UI. I'm manually adding my file, however, when I add files, I get the following error:
Uncaught (in promise) TypeError: _s3FineUploader2.default.s3.FineUploader is not a constructor
Related code
import qq from 'fine-uploader/s3.fine-uploader/s3.fine-uploader.core';

const uploader = new qq.s3.FineUploader({
      debug: true,
      element: null,
      template: 'qq-template',
      request: {
        endpoint: 'http://<MY_BUCKET>.s3.amazonaws.com',
        accessKey: <MY_ACCESS_KEY>,
        secretKey: <MY_SECRET_KEY>,
        sessionToken: null
      },
      chunking: {
        enabled: true,
      },
      objectProperties: {
        bucket: '<MYBUCKET>',
        host: 'http://<MYBUCKET>.s3.amazonaws.com' // only needed for version 4 signatures
      },
      signature: {
        // endpoint: '/s3/signature',
        version: 2,
      },
      uploadSuccess: {
        endpoint: null,
        method: "POST",
      }
    });

    uploader.addFiles({name: 'test', blob: parsedFile});

What am I doing incorrectly, here?

Looks like you are not importing correctly. Please see https://docs.fineuploader.com/branch/master/features/modules.html

Thanks @rnicholus, that worked, however I'm running into the following response (400) from S3:
<Error>
  InvalidArgument
  <Message>POST requires exactly one file upload per request.</Message>
  <ArgumentName>file</ArgumentName>
  <ArgumentValue>0</ArgumentValue>
  <RequestId>ACB821F371474C16</RequestId>
  <HostId>W36L6deQ23R1HDqr73N+xzF2Kk/9QBqmnVGhyUG86TMU5Et+PfZ2JtwGK28WWMQAHdqAAbYSJaE=</HostId>
  </Error>

I set up the bucket policy and created the user rules per: https://blog.fineuploader.com/fine-uploader-s3-upload-directly-to-amazon-s3-from-your-browser-3d9dcdcc0f33
This is the payload:
------WebKitFormBoundaryCJ3CGGH8JAY3B5aC
Content-Disposition: form-data; name="qquuid"

e07c027b-0d47-43bf-8059-78d844bfa2c4
------WebKitFormBoundaryCJ3CGGH8JAY3B5aC
Content-Disposition: form-data; name="qqfilename"

test
------WebKitFormBoundaryCJ3CGGH8JAY3B5aC
Content-Disposition: form-data; name="qqtotalfilesize"

918
------WebKitFormBoundaryCJ3CGGH8JAY3B5aC
Content-Disposition: form-data; name="qqfile"; filename="blob"
Content-Type: text/csv;charset=utf-8;

------WebKitFormBoundaryCJ3CGGH8JAY3B5aC--

I found one other issue in this repo #1717 related to this error message, but they seem to be using the UI and not the core.

Looks like you're not using fine uploader s3

@rnicholus ok, so for some reason it still doesn't work:
import qq from 'fine-uploader/lib/s3';

const uploader = new qq.s3.FineUploader({
      debug: true,
      request: {
        endpoint: 'http://<MY_BUCKET>.s3.amazonaws.com',
        accessKey: <MY_ACCESS_KEY>,
        secretKey: <MY_SECRET_KEY>,
        sessionToken: null
      },
      chunking: {
        enabled: true,
      },
      objectProperties: {
        bucket: '<MYBUCKET>',
        host: 'http://<MYBUCKET>.s3.amazonaws.com' // only needed for version 4 signatures
      },
      signature: {
        // endpoint: '/s3/signature',
        version: 2,
      },
      uploadSuccess: {
        endpoint: null,
        method: "POST",
      }
    });

    uploader.addFiles({name: 'test', blob: parsedFile});

I then get:

So why is the s3 lib requiring a template if I'm manually adding the files?
Thanks for helping me out.

I'm now uploading like:
import qq from 'fine-uploader/lib/core/s3';
and calling it as such:
const uploader = new qq.s3.FineUploader({
      debug: true,
      request: {
        endpoint: 'http://<MY_BUCKET>.s3.amazonaws.com',
        accessKey: <MY_ACCESS_KEY>,
        secretKey: <MY_SECRET_KEY>,
        sessionToken: null
      },
      chunking: {
        enabled: true,
      },
      objectProperties: {
        bucket: '<MYBUCKET>',
        host: 'http://<MYBUCKET>.s3.amazonaws.com' // only needed for version 4 signatures
      },
      signature: {
        // endpoint: '/s3/signature',
        version: 2,
      },
      uploadSuccess: {
        endpoint: null,
        method: "POST",
      }
    });

    uploader.addFiles({name: 'test', blob: parsedFile});

and I'm seeing:
TypeError: Cannot read property 'XhrUploadHandler' of undefined
but I don't see anything in the docs about XhrUploadHandler.

Most likely because you have inexplicably set an endpoint to null. I think this issue has run it's course


App keeps closing after I downloaded the app.

I downloaded the app and tried to launch it but it wont open, it just instantly crashes after launching.

I downloaded the app and tried to launch it but it wont open, it just instantly crashes after launching.

Known issue, will be fixing today. Stay tuned for new update

Fixed with this release


Match object with value passed to the function

The object passed to the function was not using the same name and it was a little bit confusing since on the Good example was using a not defined variable.

This was changed intentionally in https://github.com/ryanmcdermott/clean-code-javascript/pull/97

Hey Crisoforo! Thank you for contributing.
As Vse stated, this has been changed back and forth. Let's settle on what's currently there, because at some point in the future someone might want to change it back!

Sounds good thanks @vsemozhetbyt @ryanmcdermott


Q30077137 Teresa Carvalho more birthdates in WD - was bad data in Wikidata did restore

Feedback @rbbby see https://github.com/welfare-state-analytics/riksdagen-corpus/issues/103#issuecomment-1017613008
Q30077137 see video

i did a restore as it looks like a wrong merge

looks like a long jumper (old id Q30077137) with the same name was merged with the Swedish PM
I did restore

trusted source is Riksdagen person GUID P8388 = 3d764cf6-705b-460b-8226-df8f1226b27b

Done


how to generate a smaller vendor.js file?  vendor.js file size is not minified or uglified when running the vendor webpack

At close to 5 MB this is very high for a production build, and I notice the vendor.js file served when in production mode is not compressed or uglified.
I have set the environment variable in the console to Production instead of Development and rerun the webpack with the vendor config.  Actually with either Dev or Prod, the resultant vendor.js file that is generated is the same size.
Is there a step I am missing to generate a smaller tree shaken, minified and uglified vendor.js file?

Sounds like you're missing the --env.prod flag:
webpack --config webpack.config.vendor.js --env.prod

thanks, this brought it down to closer to 3 from over 7 (with some additional libraries I needed) thanks - FYI the instructions in the site readmedo not mention this for production mode - thanks for your quick response and help though!  FYI the instructions link to your blog with instructions that only mention the following: Make a production build. Set the ASPNETCORE_ENVIRONMENT variable to Production and then run (may want to update with the step you just mentioned here:
webpack --config webpack.config.vendor.js
webpack
…to regenerate both the vendor and app bundles. Now when you run the app (dotnet run again), the browser will receive fully minified resources.
Thanks again


Converted tests to py.test

Ported tests over to py.test.  They still require much love, but
py.test is a much better environment to work within
Changed assertions to  ==
Moved demo out of tests dir into root of project

Much more to come...
Fixes: #236

Wow! This makes a lot more sense given our familiarity with testinfra. 👍

I'm a big fan of this change. 👍


dear god....

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
Describe the solution you'd like
A clear and concise description of what you want to happen.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Checklist (required)

[ ] My feature request hereby, is not a duplicate of the other request.
[ ] My feature request isn't a existing feature.

Additional context
Add any other context or screenshots about the feature request here.

er... did you accidently open this issue? theres no info about your issue in it

I think this is a false issue. I might have to close it, sorry!


Adding MANIFEST.in, replace vegitron with uw-it-aca in README

Coverage remained the same at 88.219% when pulling d74bd05978eced4b622d4df007bd67bdd1441880 on develop into 6995685b8daeb2ae7281516001ccf6bf051dbb4a on master.


feat(icon): Add pythowo icon

Changes proposed:

[x] Add
[ ] Delete
[ ] Fix
[ ] Prepare

PythOwO is an uwu programming language written in Python. UwU. I have added the icon to identify the .pyowo files

The icon doesn't support our guidelines. Margins should be respected.


Add Support for Meross MRC210 Fan Controller

The Meross MRC210 is a multiple ceiling fan controller compatible with a variety of ceiling fans.
I can see my HVAC fans come on in HomeKit and I would like to be able to add automation to make the ceiling fans turn on automatically to assist them. Unfortunately the MRC210 seems to be the one Meross product that is not yet supported by this cool plugin.

@LordJohnWhorfin have you used http catcher to get the data that is being set to the plug? if not see Getting-Credentials wiki.

See #151


[consensus] let consensus call LEC

Motivation
According to #3744 , consensus has to talk to LEC directly instead of building a block_executor.
Have you read the Contributing Guidelines on pull requests?
Y
Test Plan
CI

@bors-libra r=davidiw

:pushpin: Commit 129df5d has been approved by davidiw

:hourglass: Testing commit 129df5dc7d305de3709a0aed2c166ed12bd4e797 with merge 191b40dc7108b1213150fa3d999aedc2f70394fe...

:sunny: Test successful - checks-actions_land_blocking_test, checks-circle_commit_workflow
Approved by: davidiw
Pushing 191b40dc7108b1213150fa3d999aedc2f70394fe to master...


Make resource work in newer versions of Concourse

The resource didn't work anymore so I fixed and improved it.

So @vito .. will this ever get merged?

@philippeboyd I don't really intend to support this resource type - it's just here as an example. It looks like upstream has turned into a proper fork now so I would suggest folks just use it. :)


Toggling allow_experimental_analyzer=0/1

Hi!
I'm struggling to toggle allow_experimental_analyzer=1 by adding it to Additional JDBC connection string options.
All queries still run with the default/0 allow_experimental_analyzer flag.
I see it was hard-coded to 0 until some time ago, but I'm using plugin version 1.50.6, which (as far as I imagine) should not re-write the setting.
I want to toggle the analyzer independently of the clickhouse version.
What am I missing?
Metabase v0.50.27, clickhouse 23.8.16

@lainiwa, this is indeed very annoying, and the additional JDBC options don't help in this case. A separate field to override that will be added after https://github.com/ClickHouse/metabase-clickhouse-driver/pull/272

@lainiwa, can you please try https://github.com/ClickHouse/metabase-clickhouse-driver/releases/tag/1.50.7?

Looks good, thank you!


NiFI-10922 Update testcontainers version to 1.17.6

Summary
NIFI-10922
Tracking
Please complete the following tracking steps prior to pull request creation.
Issue Tracking

[X] Apache NiFi Jira issue created

Pull Request Tracking

[X] Pull Request title starts with Apache NiFi Jira issue number, such as NIFI-00000
[X] Pull Request commit message starts with Apache NiFi Jira issue number, as such NIFI-00000

Pull Request Formatting

[X] Pull Request based on current revision of the main branch
[X] Pull Request refers to a feature branch with one commit containing changes

Verification
Please indicate the verification steps performed prior to pull request creation.
Build

[ ] Build completed using mvn clean install -P contrib-check

[X] JDK 8
[X] JDK 11
[X] JDK 17

Licensing

[ ] New dependencies are compatible with the Apache License 2.0 according to the License Policy
[ ] New dependencies are documented in applicable LICENSE and NOTICE files

Documentation

[ ] Documentation formatting appears as expected in rendered files

This ran and was successful the first time when it ran in my private repo.


All Possible Sums Using FFT

Have you read the Contributing Guidelines on Pull Requests?
Yes
Description
All Possible Sums Using FFT
Checklist

[x] I've read the contribution guidelines.
[x] I've checked the issue list before deciding what to submit.
[x] I've edited the README.md and link to my code.

Related Issues or Pull Requests
#1195

@HarshCasper Please Review my PR.

@HarshCasper @iamrajiv @atarax665 Please Review my PR

LGTM!


GSD Request

--- GSD JSON ---
{
  "vendor_name": "Linux",
  "product_name": "Kernel",
  "product_version": "versions from v5.4 to before v5.10.84",
  "vulnerability_type": "unspecified",
  "affected_component": "unspecified",
  "attack_vector": "unspecified",
  "impact": "unspecified",
  "credit": "",
  "references": [
    "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=ca7a03c4175366a92cee0ccc4fec0038c3266e26",
    "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=209d35ee34e25f9668c404350a1c86d914c54ffa"
  ],
  "extended_references": [
    {
      "type": "commit",
      "value": "ca7a03c4175366a92cee0ccc4fec0038c3266e26",
      "note": "introduced"
    },
    {
      "type": "commit",
      "value": "209d35ee34e25f9668c404350a1c86d914c54ffa",
      "note": "fixed"
    }
  ],
  "reporter": "joshbressers",
  "reporter_id": 1692786,
  "notes": "",
  "description": "ipv6: fix memory leak in fib6_rule_suppress\n\nThis is an automated ID intended to aid in discovery of potential security vulnerabilities. The actual impact and attack plausibility have not yet been proven.\nThis ID is fixed in Linux Kernel version v5.10.84 by commit 209d35ee34e25f9668c404350a1c86d914c54ffa, it was introduced in version v5.4 by commit ca7a03c4175366a92cee0ccc4fec0038c3266e26. For more details please see the references link."
}
--- GSD JSON ---

This issue has been assigned GSD-2021-1002487


stress test for bucket creation/deletion

It's a functional test to check if the behavior of metadata is correct in the case of recycling buckets.
To verify to some extend https://github.com/scality/MetaData/issues/707.

@ironman-machine

Hello @ttvi
Starting end to end procedure using the following payload:
{"REPO_NAME": "S3", "SCALITY_S3_BRANCH": "ft/bucketStressTest", "DEFAULT_BRANCH": "master"}
Please follow http://ci.ironmann.io/gh/scality/Integration/5267 for CI status.

Nice 😃 Wouldn't this make more sense to be in Integration?

@rahulreddy, why in integration?  by having it here, we benefit from it testing all backends and it will be included in integration by virtue of integration picking up s3 tests.

Oh right, Integration runs S3 functional tests, nvm.

@ironman-machine to make sure

Hello @ttvi
Starting end to end procedure using the following payload:
{"REPO_NAME": "S3", "SCALITY_S3_BRANCH": "ft/bucketStressTest", "DEFAULT_BRANCH": "master"}
Please follow http://ci.ironmann.io/gh/scality/Integration/5307 for CI status.


Import ROMS Crash

To reproduce:

Launch Vapor on Casper.  Import the a few files in /glade/p/cisl/vast/vapor/data/Source/ROMS/jsmall.  DO NOT INCLUDE THE GRID FILE
Vapor crashes

Kicking this back to @sgpearse. The code in AnnotationRenderer::_calculateDomainExtents assumes a data set will contain 2D or 3D variables. It may not.


Inconsistent handling of newlines in markdown in adaptive cards

According to the documentation, \n\n should be used when adding a newline in markdown text in a TextBlock in an adaptive card.
Example card:
{
        "$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
        "type": "AdaptiveCard",
        "version": "1.2",
        "body": [
         {
            "type": "TextBlock",
            "text": "<at>User</a> Your package will arrive on {{DATE(2017-02-14T06:00:00Z, SHORT)}} at {{TIME(2017-02-14T06:00:00Z)}}",
            "wrap": true
        },
          {
            "type": "TextBlock",
            "text": "**bold**\n\n_cursive_",
            "wrap": true
          }
        ],
        "msteams": {
          "entities": userAboveMentioned,
          "width": "Full"
        }
      }

The bot sends this card with a mention to a group chat and the mentioned User opens client:
Works fine on desktop and web, \n\n = 1 newline
Android: \n\n = 2 newlines
iOS: \n\n = 0 newlines, needs \r\n and the user mention completely breaks rendering the card (date function and markdown shown in raw text) (see https://github.com/MicrosoftDocs/msteams-docs/issues/4253)
The bot sends this card with a mention to a channel (creates a new conversation using adapter.createConversation):
Desktop, web and Android: \n\n = 2 newlines
iOS:  \n\n = 0 newlines, needs \r\n and the user mention completely breaks rendering the card (date function and markdown shown in raw text) (see https://github.com/MicrosoftDocs/msteams-docs/issues/4253)
Solution: Please make \n\n work the same everywhere

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

ID: 001a12ea-30fa-d626-18a9-02a518bfb37f
Version Independent ID: e5f5f69e-66e9-d1b2-e19a-485d0ffcd6fa
Content: Text formatting in cards - Teams
Content Source: msteams-platform/task-modules-and-cards/cards/cards-format.md
Product: msteams
GitHub Login: @surbhigupta
Microsoft Alias: lajanuar

@matthiasdilger - We are looking into this I will get back to you soon.

Having the same issue. So far, \r\r will produce consistent line break across platform (iOS/Android/PC/Web), you can use that as a workaround.

@matthiasdilger - We were able to repro this issue. We have raised a bug for the same.

@Meghana-MSFT It works better now on desktop and web and also iOS has improved slightly but Android still has the issue of \n\n in markdown TextBlocks causing too many newlines. It would be great if this could be fixed.


Feature/improve delete and moving commands

Made the moving just switch the 2 affected articles, so text between articles is preserved.
Also now when deleting an article the numbers are recalculated

I have been trying for a while and can't reproduce, are you able to? If so are you getting any error on the console, this is weird

Oh wait, I'm stupid this requires the editor in latest dev, arne has just merged a fix for that bug and I forgot that I have it npm linked

can this be merged and released soon? it's blocking an upgrade of the editor in GN


Visualize tree structure of cards

Perhaps using something like Mermaid?

This should also show read-state, and be clickable/hoverable to see thumbnails

Perhaps https://avdi.codes/tools-for-turning-descriptions-into-diagrams/


ocl_cuckaroo plugin crash with AMD (Mac Pro)

The "ocl_cuckaroo" plugin crashes immediately on my Mac Pro 2012 (Mojave), with 2 CPU's (12 cores total), and an AMD Radeon RX 580 (8GB).  Here is the section of "grin-miner.toml" with applicable configurations:
plugin_name = "ocl_cuckaroo"
[mining.miner_plugin_config.parameters]
platform = 0
device = 1
Screen print of the crash is as follows:

What is interesting is that I am able to run the "ocl_cuckatoo" plugin just fine, as well as the "cuckaroo_cpu_compat_29", works OK.  Screen prints are as follows:

What is interesting is that I am able to run the "ocl_cuckatoo" plugin just fine, as well as the "cuckaroo_cpu_compat_29", works OK. Screen prints are as follows:

Update: after running the "ocl_cuckatoo" plugin overnight, there were no shares accepted (!), so there's possibly a bug in "ocl_cuckatoo" or some compatibility issue with my AMD card...
In any case, I've stopped running the "ocl_cuckatoo" plugin on my Mac Pro, and now just running a Grin node & wallet, and Grin-Miner with the "cuckaroo_cpu_compat_29" plugin (which does accept shares).

another screen shot of the crash of "ocl_cuckaroo" plugin, plus additional information about th GPU used...

Could you post an output of clinfo command?
Some cards shows 256 as max wg size, while in reality RX 520 supports 1024, so we try to fix it here https://github.com/mimblewimble/grin-miner/blob/master/ocl_cuckaroo/src/trimmer.rs#L91 it seems it doesn't work in your case

Could you post an output of clinfo command?
Yes, please see links below:

clinfo_mac_format.txt

clinfo_dos_format.txt

Thanks. That's what I said:
 Max work item sizes                             256x256x256
 Max work group size                             256

we have no problem to set the correct value (1024) on linux, obv it doesn't work on mac. Perhaps you can find a way to somehow set it manually while I'll try to find a solution. Unfortunately I don't have an amd card to test with mac, so may need your assistance.

OK, I'll see what I can do to set it manually (?), not sure how this can be done but I'll dig around..
Also, would be glad to help you with testing, no problem...
(just a side note--  it seems that OpenCL runtime in the current macOS supports only OpenCL 1.2, so basically it is recognizing my OpenCL 2.0+ GPU as OpenCL 1.2.   Appears that Apple is trying to move developers to switch to using Metal instead of OpenCL... )

After doing some digging/tweaking, I am unfortunately unable to get the ocl_cuckaroo plugin to work on macOS... all out of ideas at this point...  if you have any ideas or testing for me, then please let me know, would be glad to help... thank you!

Still trying to get ocl_cuckaroo plugin to work for macOS.  Have also tried to compile using Xcode, but still the ocl_cuckaroo plugin crashes due to the Max workgroup size issue mentioned above...
By the way, there is some helpful information about max workgroup size in this thread:  https://github.com/RadeonOpenCompute/ROCm/issues/330

I winder why you have only Apple platform. Is it possible to install AMD drivers?

That is a good question... the AMD graphics driver is part of the operating system, so there are no additional drivers needed or available...
One additional note--  the macOS version of OpenCL is quite ancient, and unlikely to be updated (Apple is suggesting developers adopt Metal instead of OpenCL)... actually, OpenCL was depreciated in Mojave (in other words, the deprecated APIs will be removed entirely from future versions of macOS :worried:
Here is the announcement from Apple, please read towards the end of the article...Deprecation of OpenCL

This issue is a bit old but does anyone know if there since has been any work done to support metal on MacOS e.g. through https://github.com/gfx-rs/gfx or https://github.com/gfx-rs/wgpu-rs ?

This issue is a bit old but does anyone know if there since has been any work done to support metal on MacOS e.g. through https://github.com/gfx-rs/gfx or https://github.com/gfx-rs/wgpu-rs ?


Don't add default meta tags when using key in the custom one

For more info check https://github.com/zeit/next.js/issues/6919#issuecomment-486521697

Hi! After careful review we've decided this is the intended behavior. Head elements that are expected to be deduped should be added using next/head.
The reason this surfaced is because we started defaulting a more commonly used <meta> tag -- not that something is working unexpectedly.


grpc_transcoder: fix a bug with wrong binding type

To fix https://github.com/envoyproxy/envoy/issues/22926
As reported, If a binding field type is integer, but path segment is string,  the request should be rejected.  But current behaviors is not consistent.   When the request body is not empty,  it works as expected, the request is rejected.  But if request body is empty,  the request is not rejected.
Found two bugs:

In grpc_httpjson_transcoding lib,  the error status is not propagated out properly in empty body case.
In grpc_transcoder filter,  check transcode status is in the wrong place, it should be after readToBuffer() call.

Changes:

Get the fix
Fix the code in grpc_transcoder_filter
Add an integration test to verify the fix

Risk Level:  None
Testing:  Unit tested and integration tested
Docs Changes: None
Release Notes:  Yes

cc @lizan

https://github.com/orgs/envoyproxy/teams/dependency-shepherds:  Please review and approve,  thanks


feat: homomorphisms are linear over Z/nZ scalars

Port from PFR for using linear algebra on C_2^n, following the convention of AddMonoidHom.to{Int,Nat,Rat}LinearMap but in a different file to avoid circular import.
For a separate PR:
@[reducible]
def module (h : ∀ (x : M), n • x = 0) : Module (ZMod n) M

Co-authored-by: adamtopaz<EMAIL_ADDRESS>

bors d+

bors r+


feat: pin elixir and erlang versions for asdf

Closes #1647
Overview
Pin elixir and erlang versions through .tool-versions file instead of in CI config, so we also enforce the same versions to local environments and installation docs too.
Changes

Add asdf's .tool-versions and pin the versions to the ones currently used by the CI
Remove the elixir/erlang version specs from CI config so a basic asdf install refers to .tool-versions

Testing
CI should pass, meaning that it's able to install from .tool-versions correctly and build/test are successful with this approach

Thanks everyone!


If-Match header fails when etag matches existing etag

When making an update to an entity, a 412 Precondition Failed error is returned. It appears that ermrest is not matching the etag properly.

This seems to have involved two different problems...

The whole client object rather than just ID was being baked into ETags and might not be a stable representation. I changed it to pluck out just the ID field.
The mod_deflate module enabled on the dev server is mangling the ETag and adding a -gzip suffix inside the service-generated ETag. So, went sent back by the client it would never match the service-internal ETag.  I changed our parser to remove the -gzip part and get back to our canonical form.

@jrchudy already confirmed that it now works for him, so I am closing this.


Waymo Dynamic History Vehicle Hijacking Script

This script allows user to hijack history vehicles dynamically through a trigger event (based on time or a specific behavioral event) in a Waymo Scenario. This will be useful for scenario generation and training agents in the future.

@RutvikGupta What is blocking this from being merged?

@RutvikGupta What is blocking this from being merged?

Another approval lol.


Latest released version on mvnrepository

On central mvnrepository i can only see latest version 0.12.2 which released on Aug 02, 2022

org.patrodyne.jvnet
hisrc-basicjaxb
0.12.2

what is plan to publish 2.1.1 ?

Sorry - put it on wrong location. Closing issue and created new one in relevant repo
https://github.com/patrodyne/hisrc-basicjaxb/issues/18


Hangman prompt not working

Config Json:
{"LoginToken":"<censored>","OwnerID":167760146204852224,"ServerID":933067405062733917,"BotChannelID":null,"ModRoleID":null,"JesterRoleID":null,"NaughtyRoleID":null,"SlowmodeRoleID":null,"DoodooRoleID":null}

probably because its not in a bot channel

note: make sure to censor LoginToken before posting config


Add Electron + CreateReactApp Eexample

Should close https://github.com/python-eel/Eel/issues/216,  https://github.com/python-eel/Eel/issues/57, https://github.com/python-eel/Eel/issues/428
Relates to https://github.com/python-eel/Eel/issues/285, https://github.com/python-eel/Eel/issues/544, https://github.com/python-eel/Eel/issues/266, https://github.com/python-eel/Eel/issues/607, https://github.com/python-eel/Eel/issues/159, https://github.com/python-eel/Eel/issues/491
Only configured for MacOS at the moment. If needed, make sure to get version for Intel processor by modifying download_electron.sh
Used this article as reference to configure CRA app with Electron.
Currently main.js uses this configuration (may need improvements) as discussed here:
webPreferences: {
  preload: path.join(__dirname, 'preload.js'),
  contextIsolation: false,
  nodeIntegration: true,
  nodeIntegrationInWorker: true
}

Attempting to work out issue related to process not terminating properly on Electron window close, will reopen then.

Python app terminates correctly now when Electron is closed, using:
in main.js
  mainWindow.on("close", function (e) {
    if (mainWindow) {
      mainWindow.webContents.send("app-close");
    }
  });

in App.tsx
  componentDidMount() {
   ipcRenderer.on('app-close', () => {
     eel.quit_app()
   });
  }

and in eel_electron_CRA.py
@eel.expose
def quit_app():
    """Quit the app."""
    print('Exiting python app')
    os._exit(0)

---onefile --noconsole flags needs to be further tested though.

Currently main.js uses this configuration (may need improvements) as discussed here:
webPreferences: {
  preload: path.join(__dirname, 'preload.js'),
  contextIsolation: false,
  nodeIntegration: true,
  nodeIntegrationInWorker: true
}


Minor e2e tests improvements

Description
Minor e2e tests improvements:

removed unreachable code
check for possibly unbound variable
test the whole payload

Type of change

[x] Refactor
[ ] New feature
[ ] Bug fix
[ ] CVE fix
[ ] Optimization
[ ] Documentation Update
[ ] Configuration Update
[ ] Bump-up dependent library
[ ] Bump-up library or tool used for development (does not change the final image)

/retest

/retest

/retest

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 95.46%. Comparing base (e24f55f) to head (ad818fd).

Additional details and impacted files

@@           Coverage Diff           @@
##             main    #1169   +/-   ##
=======================================
  Coverage   95.46%   95.46%
=======================================
  Files          56       56
  Lines        2380     2380
=======================================
  Hits         2272     2272
  Misses        108      108

/lgtm

/approve


'sf project deploy start' commands are taking a long time to pass back a completion status to pipelines

Summary
We run our deployment automation using Bitbucket Pipelines, using the docker image: salesforce/cli:nightly-full
Over the past week or two, our development team has noticed validations/deployments hitting the sandbox, completing, and then a significant wait before the sf project deploy start command completes in Bitbucket.
After some further investigations, it seems to happen more so on successful runs. I ran four scenarios which run on a consistent pipeline script to a single sandbox:

branch1 (contains valid metadata so was passing): triggered a build, org showed it passed, the CLI outputs Status: Succeeded

Some 20 minutes later, Bitbucket has still not received the completion status

branch2 (contains failing tests): triggered a build, org showed it failed, within a minute the step in Bitbucket displays the failure
branch1 (untouched from the first build): triggered again, same outcome, it passes, but the status hangs
branch1 (modified a class to break the validation): as with branch2, org presented the failure and almost immediately the Bitbucket step failed too

Steps To Reproduce
I can't provide our repository since the content is sensitive, but this behaviour seems to be agnostic to the metadata included in the build anyway. Below is the script we're using for PR validations:
# Author: Slalom

# Docker image to be used
image:
  name: salesforce/cli:nightly-full
  run-as-user: 0

# Maximum minutes a step can execute before timing out
options:
  max-time: 120

pipelines:

  pull-requests:

    feature/*:
      - step:
          name: QA Sandbox Validation
          script:
            - sf version --verbose --json
            - echo y | sfdx plugins:install sfdx-git-delta
            - export COMMIT_MESSAGE=$(git log --format=%B -n 1 $BITBUCKET_COMMIT)
            - if [[ "$COMMIT_MESSAGE" == *"[bypass-delta]"* ]]; then echo Bypassing creation of delta directory; else mkdir delta-deployment; echo 'force-app/main/default/layouts/*' > .deltainclude; sfdx sgd:source:delta --to origin/$BITBUCKET_BRANCH --from origin/$BITBUCKET_PR_DESTINATION_BRANCH --output "delta-deployment" --generate-delta --include .deltainclude; echo Delta directory result...; ls -R delta-deployment; fi;
            - export TEST_FILES=$(python3 scripts/get-test-class-list.py delta-deployment/force-app/main/default/classes delta-deployment/force-app/main/default/triggers | tr ',' ' '); echo $TEST_FILES
            - export CLIENT_ID=$PLATFORM_QA_SECRET; export USERNAME=$PLATFORM_QA_USERNAME; export URL=$PLATFORM_QA_URL;
            - openssl enc -nosalt -aes-256-cbc -d -in certificates/server.key.enc -out certificates/server.key -base64 -K $ENCRYPTION_KEY -iv $ENCRYPTION_IV; ls certificates
            - sf login org jwt --client-id $CLIENT_ID --username $USERNAME -f certificates/server.key --instance-url $URL
            - if [ "$(ls -A delta-deployment/force-app/main/default)" ] || [ "$(ls -A delta-deployment/omniStudio-metadata)" ] || [ "$(ls -A delta-deployment/unpackaged-metadata)" ]; then sf project deploy start --verbose --ignore-conflicts --ignore-warnings --source-dir delta-deployment --dry-run --test-level RunSpecifiedTests --tests $TEST_FILES "Test With Space" --target-org $USERNAME --wait 60; else echo "No delta detected, full validation..."; sf project deploy start --verbose --ignore-conflicts --ignore-warnings --source-dir force-app/main/default omniStudio-metadata unpackaged-metadata --dry-run --test-level RunLocalTests --target-org $USERNAME --wait 60; fi
            - sf logout org --target-org $USERNAME --no-prompt

Expected result
When a validation/deployment successfully completes in an org, the CLI receives the exit code shortly afterwards
Actual result
Instead, we are seeing it hang for 10-20 minutes.
System Information
Terminal: bash
{
  "cliVersion"<EMAIL_ADDRESS>  "architecture": "linux-x64",
  "nodeVersion": "node-v18.15.0",
  "osVersion": "Linux 5.15.0-1043-aws",
  "shell": "bash",
  "rootPath": "/usr/local/lib/nodejs/lib/node_modules/@salesforce/cli",
  "pluginVersions": [
    "@oclif/plugin-autocomplete 2.3.8 (core)",
    "@oclif/plugin-commands 2.2.26 (core)",
    "@oclif/plugin-help 5.2.19 (core)",
    "@oclif/plugin-not-found 2.4.1 (core)",
    "@oclif/plugin-plugins 3.8.2 (core)",
    "@oclif/plugin-search 0.0.22 (core)",
    "@oclif/plugin-update 3.2.3 (core)",
    "@oclif/plugin-version 1.3.10 (core)",
    "@oclif/plugin-warn-if-update-available 2.1.0 (core)",
    "@oclif/plugin-which 2.2.32 (core)",
    "@salesforce/cli 2.12.0 (core)",
    "apex 2.3.15 (core)",
    "auth 2.8.17 (core)",
    "data 2.5.12 (core)",
    "deploy-retrieve 1.18.2 (core)",
    "info 2.6.45 (core)",
    "limits 2.3.35 (core)",
    "login 1.2.31 (core)",
    "marketplace 0.2.2 (core)",
    "org 2.10.8 (core)",
    "schema 2.3.28 (core)",
    "settings 1.4.30 (core)",
    "sobject 0.2.7 (core)",
    "source 2.10.36 (core)",
    "telemetry 2.3.4 (core)",
    "templates 55.5.13 (core)",
    "trust 2.6.15 (core)",
    "user 2.3.32 (core)"
  ]
}

Additional information

@stuartgrieve This might be related to a specific metadata type you have in your project. Can you run the command with SF_LOG_LEVEL=debug and DEBUG=* env vars. In those logs you might see logs indicating that we're still polling for certain SourceMembers, Still looking for SourceMembers: ... (logged from here)

Is there any harm to setting the SF_DISABLE_SOURCE_MEMBER_POLLING environment variable to True to disable this behavior?
I was noticing my GitLab pipeline status was stuck in Status: In-Progress for about 30 minutes after the deployment finished.
This deployment only contained 1 ApexComponent that didn't run any tests in the org.
I have also seen this behavior in other deployments which contained different types of metadata.

I would take a look at the description of SF_DISABLE_SOURCE_MEMBER_POLLING here

When you disable SourceMember polling, the CLI’s internal tracking of what’s changed between your local source and org metadata gets out of sync. As a result, subsequent runs of the project deploy|retrieve commands are unreliable, and it’s up to you to synchronize your source. To reset source tracking, use the project reset tracking command.

So based on my understanding on the variable's description, the risk is that the CLI is unable to track what's changed between the local source and the org.
The comment " Sometimes you don't require source tracking at all, such as in a continuous integration (CI) job" makes me think you can accept this risk in disabling the source member polling if you are enforcing strict version control via a Git repository.

@mcarvin8 If you were able to find which SourceMember it was hanging on (following https://github.com/forcedotcom/cli/issues/2495#issuecomment-1741337206) then we could add it to an exclusion list. Even if you decide to disable source member polling, this could save someone else some time in the future

I haven't been able to replicate this with the above Logging updates suggested, but I noticed 2 deployments run into this issue in my org (1 production and 1 sandbox) and both deployments were deploying 'ApexComponent'. The Prod deployment which stalled in the CLI was just deploying  a single ApexComponent without running any tests in the org.
I'll try again to see if I can get the 'Still Looking for SourceMember' log generated with an ApexComponent deployment, but thought I'd share that for now.

This is stopping us from moving from sfdx to sf commands as sf project deploy start commands keeps timings out and the pipelines are breaking. Any timlines to improve the performance.

If you don't care about tracking, you can set SF_DISABLE_SOURCE_MEMBER_POLLING
the org create scratch command has a flag for turning tracking off entirely.  I think we need a way for doing that with sandboxes for situations like this where you're not doing dev work and don't need tracking.
Additionally, for long-lived sboxes, the SourceMember history is going to pile up in ways the scratch orgs can't, and that can lead to perf issues as well.
Lastly, we need a way to better expose what's taking SourceMember polling so long, which may help you fix issues.  The info is in the logs and captured in telemetry, but not in the json responses.

heads-up...we've added a command for sf org disable tracking so you can use that on a source-tracking sandbox but don't actually want tracking.
nightly...now
RC on the 29th,
Latest the following Wed.

We dont do source tracking, hence for us it may not be the solution we are looking. We only need a working model of project start command


[Migrate actions] Create create release action

Description
As a maintainer, I need an action that creates a GitHub release, so that I can automate release workflows.
### Acceptance criteria
- [ ] I can call this action to create a new GitHub release
- [ ] I can publish from an uploaded archive or from the local `./dist` directory
- [ ] I can use the changelog in the repo as release notes
- [ ] I have the ability to create either a draft release or a full release

Impact to other teams
This impacts Adapters and Core since they are the primary consumers of these actions.
Proposals

named github/release/create
inputs archive,tag,sha,changelog,is-draft

We have a PR with these contents already.


Pass in last_id explicity

Currently it seems the only reason for SequenceProperties to be mutable is  that it needs to be aware of last_timestamp, and sequence  when generating new ids.
If you need to have a multi-threaded sequence generator this would require to have an Arc<Mutex<SequenceProperties>> due to it.
Would suggest to make changes or expose a new api so that perhaps, you can pass the last_id seperately as immutable, so perhaps AtomicU64 could be used instead of the Mutex?

Hi @Swoorup. Thanks for the suggestion. I'm wanting a new interface for this anyways, but I think we could also take advantage of the pattern for interior mutability. I'm making some progress in branch
Issue1_interior_mutability_last_current_datetime_partial_cached
https://github.com/drconopoima/sequence-generator-rust/tree/Issue1_interior_mutability_last_current_datetime_partial_cached

@drconopoima
Sounds good , I am picking rust again for a project of mine, and this is like the first things I need. 😄
I think it better to remove any mutable fields from SequenceProperties and instead keep the struct as immutable.
Also doesn't seem much reason to keep the following properties?
sequence,
current_timestamp
last_timestamp
partial_cached_id

So generate id would look like
pub fn generate_id(
    properties: &SequenceProperties,
    last_id: u64
) -> Result<u64, SequenceGeneratorSystemTimeError>
// decode the last_timestamp and sequence from last_id ?

@Swoorup
From version 0.3.1, the SequenceProperties struct doesn't need to be mutable. The private parameters are still present, for last_timestamp, current_timestamp, sequence, partial_cached_id, but the implementation details do not leak as they are handled automagically with interior mutability.
There is an issue with generating an ID from a pre-existing ID, we would take quite a leap of faith to understand the ID that was passed contains the same bit numbers for all sections, the timestamp, node_id, sequence_id, and the maximum value for the sequence. Even if this applies, the clock could change between the generated previous ID and the moment a new one is calculated. The private fields are keeping track of those corner cases.
I wanted to change the interface more in the sense of allowing the creation of empty properties struct without any bits setup, and allowing properties to be set up by methods independently, counting degrees of liberty until we have enough properties to derive all others.
I don't know if the changes in 0.3.1 are already enough for your case, or we could work something out. But I think passing a previous ID could be confusing and error-prone as an interface due to the fully configurable bit parameters (in other Snowflake implementations that have bit sizes hardcoded it would be quite convenient)

Fair point, in that case, wouldn't you need to use either Atomics, Arc mutex instead of Refcell?
I don't think sure if Send and Sync are derived using Cell, Rc.

The usage I need out of it would ensure different worker threads use independent copies with their own node IDs, so I can identify the worker by the sequence ID. If you can provide a sample code requiring Send+Sync I can consider migrating to Arc/Atomic.

I don't have a simple example to share, but I am using it to id as well as timestamp messages coming from different sources using tokio.
fn println_id(new_id: i64) {
  let thread_id = thread::current().id().as_u64();
  let stdout_ref = &std::io::stdout();
  let mut lck = stdout_ref.lock();
  writeln!(&mut lck, "Thread number {}, Got Id: {}", thread_id, new_id).unwrap();
}

#[tokio::main]
async fn main() {
  let gen = dist_sequencial_id::Generator::new();
  thread::scope(|s| {
    (1..1000)
      .map(|_| {
        s.spawn(|| {
          let new_id = gen.generate_i64();
          println_id(new_id);
        })
      })
      .for_each(|j| j.join().unwrap());
  });
}

And wrapping the generator as
  const CUSTOM_EPOCH_SINCE_UNIX: std::time::Duration =
    std::time::Duration::from_millis(1577836800000u64);
  // Current worker/node ID
  const NODE_ID: u16 = 500;
  /// Operate in milliseconds (10^3 microseconds)
  const MICROS_TEN_POWER: u8 = 1;
  /// 10-bit node/worker ID
  const NODE_ID_BITS: u8 = 8;
  /// 12-bit sequence
  const SEQUENCE_BITS: u8 = 12;
  /// unused (sign) bits at the start of the ID. 1 or 0 generally
  const UNUSED_BITS: u8 = 1;
  /// initial time in nanoseconds for exponential backoff wait after sequence is exhausted
  const COOLDOWN_NS: u64 = 1500;

  pub struct Generator {
    properties: RwLock<SequenceProperties>,
    /// 0 if uninitialized
    last_id: AtomicI64,
  }

  impl Generator {
    pub fn new() -> Self {
      let properties = SequenceProperties::new(
        std::time::UNIX_EPOCH + CUSTOM_EPOCH_SINCE_UNIX,
        NODE_ID_BITS,
        NODE_ID,
        SEQUENCE_BITS,
        MICROS_TEN_POWER,
        UNUSED_BITS,
        COOLDOWN_NS,
      );

      Self {
        properties: RwLock::new(properties),
        last_id: AtomicI64::new(0i64),
      }
    }

    pub fn last_id(&self) -> i64 {
      self.last_id.load(Ordering::Relaxed)
    }

    pub fn decode_timestamp(&self, id: i64) -> Timestamp {
      let properties = &self.properties.read();
      let timestamp_micros = decode_id_unix_epoch_micros(id as u64, properties);
      Timestamp::from_micros(timestamp_micros as i64)
    }

    pub fn decode_sequence(&self, id: i64) -> u16 {
      let properties = &self.properties.read();
      decode_sequence_id(id as u64, properties)
    }

    pub fn last_sequence_and_timestamp(&self) -> (Timestamp, u16) {
      let last_id = self.last_id() as u64;
      let properties = &self.properties.read();
      let timestamp_micros = decode_id_unix_epoch_micros(last_id, properties);
      let sequence = decode_sequence_id(last_id, properties);
      let timestamp = Timestamp::from_micros(timestamp_micros as i64);
      (timestamp, sequence)
    }

    pub fn generate_i64(&self) -> i64 {
      let properties: &mut SequenceProperties = &mut self.properties.write();
      let id = generate_id(properties).unwrap() as i64;
      self.last_id.swap(id, Ordering::Relaxed);
      id as i64
    }
  }


[docs] Prepare docs

Closes https://github.com/elastic/obs-docs-team/issues/238
Builds out minimal viable docs.
What's included
This includes the overall structure of the initial doc set. There is some missing information. I've left code comments with questions to be answered throughout the files.
Read more about what needs to be included in these docs in Elastic Distributions for OpenTelemetry (Mini docs style guide) (internal doc).
To do

[x] @colleenmcginnis add initial outline with questions for the dev team in code comments
[x] @bmorelli25 high-level review of the approach (anything I should add before kicking this over to the dev team?)
[x] @colleenmcginnis continue clean up / aligning across languages
[x] @elastic/apm-agent-java review content that's already there, add content that's missing (especially where there are questions in code comments)

Feel free to either commit directly to this PR or add suggestions in PR comments — whichever works best for you!

[x] @colleenmcginnis clean up content
[x] 🆕  @colleenmcginnis convert to Markdown
[x] 🆕  @colleenmcginnis reorganize content as needed to be consumed on GitHub
[x] 🆕  @colleenmcginnis slight content reframing
[ ] @elastic/obs-docs peer review
[ ] @colleenmcginnis address feedback
[ ] @\elastic/apm-agent-java final review, approve
[ ] @colleenmcginnis merge

👋 @elastic/apm-agent-java can you please take an initial look here? I left many questions for you in code comments throughout the doc files. As you read through, if you have answers to questions, feel free to either commit directly to this PR or add suggestions in PR comments — whatever works best for you!

Sorry @bmorelli25. This PR wasn't ready for a writer review. 😞  I'll push local changes, and then see which of your comments are still applicable.

Sorry! Happy to take another look after you get the input you need from the dev team.

Thanks for your patience here! I've updated the "To do" list above with some 🆕 items that reflect some recent changes to how we're approaching documenting Elastic Distributions for OpenTelemetry. This includes converting from AsciiDoc to Markdown. Users will be directed to this repo to read the docs on GitHub. We're not going to build and host these docs on elastic.co/guide right now.

Happy to take another look after you get the input you need from the dev team.

Still happy to do this, @bmorelli25? 😏  Or should I ask someone else from the team to take a look? 🐦

@jackshirazi this is ready for a final review!

Thanks for your patience and collaboration here! I'll leave it up to your team when you want to merge this. It's good from my side!