Add #1206: Do not require a "friendly name"

Description
When creating or updating a monitor, a friendly name will no longer be required for specific monitor types. If it is not specified it will be set either the hostname or URL. In cases where both the URL and hostname are set (possible in instances where monitor type has been changed), the hostname has priority over the URL and the friendly name will be set to the hostname.
The array friendlyNameRequiredOptions contains all monitor types that still require a friendly name because they don't have either a URL or hostname field. For any monitor type specified in this array, the friendly name field will still be required.
Monitor types that no longer require a friendly name:

HTTP(s)
TCP Port
Ping
HTTP(s) - Keyword
DNS
Steam Game Server

Closes #1206
Type of change

User interface (UI)
New feature (non-breaking change which adds functionality)

Checklist

[x] My code follows the style guidelines of this project
[x] I ran ESLint and other linters for modified files
[x] I have performed a self-review of my own code and tested it
[x] I have commented my code, particularly in hard-to-understand areas
[x] My changes generate no new warnings

When I save the friendly name, it can either be "" or null. By using "" it would prevent issues with this line https://github.com/louislam/uptime-kuma/blob/c811c1ccdea1e65a864d885f8c960520bd1636d5/src/components/MonitorList.vue#L94
but it would also show as an empty string in the prometheus metrics. For some reason it doesn't feel quite right just to leave it as an empty string in the metrics. Theoretically the empty string could just be changed to null when returning the prometheus metrics but this seems a bit messy. Any thoughts on what would be best here?

When I save the friendly name, it can either be "" or null. By using "" it would prevent issues with this line
https://github.com/louislam/uptime-kuma/blob/c811c1ccdea1e65a864d885f8c960520bd1636d5/src/components/MonitorList.vue#L94
but it would also show as an empty string in the prometheus metrics. For some reason it doesn't feel quite right just to leave it as an empty string in the metrics. Theoretically the empty string could just be changed to null when returning the prometheus metrics but this seems a bit messy. Any thoughts on what would be best here?

@Computroniks, If the monitor name is empty, simply set the monitor name to its URL. So the only thing you need to change is the way the data is stored in the database.
Ie. if the monitor name is empty => monitor.name = monitor.url ... this is the best solution in my opinion.

@karelkryda I did consider that here:

Another way that this feature could be implemented is when a monitor is created, the url is copied into the name field either client or server side. The issue I see with this is if the URL were to change, it could get messy trying to work out if the friendly name should change as well.

https://github.com/louislam/uptime-kuma/issues/1206#issuecomment-1022455220
Whilst it doesn't seem like such of a big deal if someone changes the url and then has to change the friendly name as well, it seems a bit like only half a job to just copy it over to the name field.

@Computroniks I don't see a problem with that.
As I say, if the monitor name and url match when the monitor is edited, reset the monitor name (set the name to empty), and if the monitor name is not entered during editing, set the monitor name to match the monitor url when saving.

Ahh yes, of course. If I just implement a check to see if the URL and friendly name match when a user edits the monitor, I can then work out if the name should change as well. Not sure why I didn't think of that before. Thanks

No problem, I was happy to help 🙂

Anything I can do to help get this merged?

@louislam Can we get this merge?

Fixed merge conflicts

Well, I don't know why the checks are failing, the error indicates a line that I didn't even change.
✓ 77 modules transformed.
[rollup-plugin-dynamic-import-variables] Unexpected token (294:8)
file: /home/runner/work/uptime-kuma/uptime-kuma/src/pages/EditMonitor.vue:294:8
error during build:
SyntaxError: Unexpected token (294:8)
    at Parser.pp$4.raise (/home/runner/work/uptime-kuma/uptime-kuma/node_modules/rollup/dist/shared/rollup.js:19636:13)
    at Parser.pp$9.unexpected (/home/runner/work/uptime-kuma/uptime-kuma/node_modules/rollup/dist/shared/rollup.js:16932:8)
    at Parser.pp$9.expect (/home/runner/work/uptime-kuma/uptime-kuma/node_modules/rollup/dist/shared/rollup.js:16926:26)
    at Parser.pp$5.parseObj (/home/runner/work/uptime-kuma/uptime-kuma/node_modules/rollup/dist/shared/rollup.js:19248:[12](https://github.com/louislam/uptime-kuma/runs/5835807857?check_suite_focus=true#step:5:12))
    at Parser.pp$5.parseExprAtom (/home/runner/work/uptime-kuma/uptime-kuma/node_modules/rollup/dist/shared/rollup.js:18987:[17](https://github.com/louislam/uptime-kuma/runs/5835807857?check_suite_focus=true#step:5:17))
    at Parser.pp$5.parseExprSubscripts (/home/runner/work/uptime-kuma/uptime-kuma/node_modules/rollup/dist/shared/rollup.js:[18](https://github.com/louislam/uptime-kuma/runs/5835807857?check_suite_focus=true#step:5:18)803:[19](https://github.com/louislam/uptime-kuma/runs/5835807857?check_suite_focus=true#step:5:19))
    at Parser.pp$5.parseMaybeUnary (/home/runner/work/uptime-kuma/uptime-kuma/node_modules/rollup/dist/shared/rollup.js:18769:17)
    at Parser.pp$5.parseExprOps (/home/runner/work/uptime-kuma/uptime-kuma/node_modules/rollup/dist/shared/rollup.js:18696:19)
    at Parser.pp$5.parseMaybeConditional (/home/runner/work/uptime-kuma/uptime-kuma/node_modules/rollup/dist/shared/rollup.js:18679:19)
    at Parser.pp$5.parseMaybeAssign (/home/runner/work/uptime-kuma/uptime-kuma/node_modules/rollup/dist/shared/rollup.js:18646:19)
Error: Process completed with exit code 1.

Anything I can do tp help get this merged?

Fixed merge conflicts

Is there anything stopping this PR from being merged?

Just testing it with different monitor types, found out that the friendly name sometimes do not follow the current url.

This video may help.
https://user-images.githubusercontent.com/1336778/213697855-7e083688-5b61-4d79-9114-a26c6745d50c.mp4

This is probably because the docker monitor was added after this PR was first created and I haven't updated it to fix. I will get on that

This PR should have now been updated to match all of the monitor types added recently. I have also modified the logic for selecting the field to use for the friendly name so that we don't end up with the issue where we are using a http monitor but the tcp hostname is used.
I also added a custom case for TCP monitors to include the port number being monitored.

That should be the merge conflicts now fixed

@louislam This has been open for 2 years, are there any plans of merging it?


get_bgp_config is raising NotImplementedError

I am trying to extract the bgp config for one of the Cisco IOS router using pack napalm and action as "napalm.get_bgp_config" and it's generating not Implemened error"
st2 run napalm.get_bgp_config hostname=r1

...
id: 5d9a5ed791b2773108984838
status: failed
parameters:
  hostname: r1
result:
  exit_code: 1
  result: None
  stderr: "Traceback (most recent call last):
  File "/opt/stackstorm/st2/local/lib/python2.7/site-packages/python_runner/python_action_wrapper.py", line 333, in <module>
    obj.run()
  File "/opt/stackstorm/st2/local/lib/python2.7/site-packages/python_runner/python_action_wrapper.py", line 192, in run
    output = action.run(**self._parameters)
  File "/opt/stackstorm/packs/napalm/actions/get_bgp_config.py", line 14, in run
    bgpconf = device.get_bgp_config()
  File "/opt/stackstorm/virtualenvs/napalm/lib/python2.7/site-packages/napalm/base/base.py", line 653, in get_bgp_config
    raise NotImplementedError
NotImplementedError
"
  stdout: ''

Created by mistake. no action required.


remove drone sig file

Signed-off-by: Bo-Yi Wu<EMAIL_ADDRESS>

Codecov Report

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

@@           Coverage Diff           @@
##           master      #61   +/-   ##
=======================================
  Coverage   75.13%   75.13%
=======================================
  Files           1        1
  Lines         189      189
=======================================
  Hits          142      142
  Misses         46       46
  Partials        1        1

Continue to review full report at Codecov.

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


Add stringtoint() and inttostring().

Add math.stringtoint() and math.inttostring() which let you convert between an
integer and a string representation of it, and back.

If this looks good I'll add docs before merging.


fixed small formatting issue

Coverage remained the same at 97.949% when pulling 4182bc56c9d1639db5b3710ae7f8142f98afd095 on fix-tostring into 19b1f718a05edd2a0527c6bcde122c4fdc9eb164 on master.


I have build the project using javascript which is used capture the link of the tab and we can also name the perticular link name

You can work on it.


defaultWrittenConfig change baseBranch from master to main

Closes #675.
Should I add a changelog entry?

@Andarist Anything left to do here?

@Andarist Anything left to do here?

@Andarist Could you let me know if this change is still acceptable?

@janosh sorry for the delay, it's just sometimes hard to get to everything on time. The PR looks good - I just left a single nit-level comment. Could you also add a changeset to this PR?

@Andarist I had deleted my fork so couldn't make any further changes here. Closing in favor of #776 where I addressed your comments.


Can't find mito_genes

I am trying to follow this tutorial
https://scanpy-tutorials.readthedocs.io/en/latest/pbmc3k.html,
but some error just happened in the initial  QC stage.
After running:
mito_genes = adata.var_names.str.startswith('MT-')
adata.obs['percent_mito'] = np.sum(
adata[:, mito_genes].X, axis=1).A1 / np.sum(adata.X, axis=1).A1
and plot the violinplot,
I just get this graph

I felt somthing wrong and checked this:

[In]    np.sum(adata.obs)
[Out]    n_genes         14918559.0
percent_mito           0.0
dtype: float64

It seems that scanpy just didn't recognized the mitogene or removed it, but there's nothing wrong when I used Seurat.
I have no idea where the error is located and need your help. Thanks in advance.

Hi,
Can I ask if you are using the data from the tutorial? If not, then there are a a few potential sources of error here:

You may have not aligned against the mitochondrial genome (Cell Ranger versions < 2.0 don't do this)
You may have mouse data, in which case it should be lower case mt- instead of MT-.
Your data may have been pre-processed to take our mitochondrial genes.

I recall looking through quite a few datasets where there were really no mitochondrial genes. Scanpy doesn't automatically filter out mitochondrial genes. You could also check if you have any mitochondrial genes by just outputting this line: adata.var_names.str.startswith('MT-').

Hi,
Can I ask if you are using the data from the tutorial? If not, then there are a a few potential sources of error here:

You may have not aligned against the mitochondrial genome (Cell Ranger versions < 2.0 don't do this)
You may have mouse data, in which case it should be lower case mt- instead of MT-.
Your data may have been pre-processed to take our mitochondrial genes.

I recall looking through quite a few datasets where there were really no mitochondrial genes. Scanpy doesn't automatically filter out mitochondrial genes. You could also check if you have any mitochondrial genes by just outputting this line: adata.var_names.str.startswith('MT-').

It really helps! Thanks very much!(by the way I am using zebrafish data and it still should be lower case, but I was just not aware of this)


Fix calc of coordinator output cost, give back extra on change outputs

Fixes #126

To do, move input & output fee calculations to core


0.9.4 does not load on latest Mobile release

Describe the bug
A clear and concise description of what the bug is.
To Reproduce
Steps to reproduce the behavior:

Go to '...'
Click on '....'
Scroll down to '....'
See error

Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Console Errors
Go to View->Toggle Developer Tools and open up the JavaScript console, reproduce your bug, and copy/paste any logs you see there.
Device info (please complete the following information):

OS: [e.g. iOS]
Plugin Version [e.g. 0.1.3]

Additional context
Add any other context about the problem here.
Title says it all!

Hi @davebhc71, please fill out the template. I can’t help reproduce the issue with just a title.
My guess is that I updated the required version of Obsidian to 1.1.1, which has not yet been released on mobile. I can try rolling it back to 0.16 and see if that makes a difference, but without knowing the exact error message I can’t do much.


Missing COBRA_retrieved_for_joining contig file

Hello Cobra authors!
Thanks for building this tool.
I keep getting this error of a contig file not being created.
Traceback (most recent call last):
  File "/home/mall0133/miniconda3/envs/cobra/bin/cobra-meta", line 10, in <module>
    sys.exit(main())
  File "/home/mall0133/miniconda3/envs/cobra/lib/python3.8/site-packages/cobra.py", line 1747, in main
    '\t'.join([contig, str(header2len[contig]), summarize(contig), query2current[contig]]) + '\n')
  File "/home/mall0133/miniconda3/envs/cobra/lib/python3.8/site-packages/cobra.py", line 575, in summarize
    b = count_seq('COBRA_retrieved_for_joining/{0}_retrieved.fa'.format(item))  # number of retrieved contigs
  File "/home/mall0133/miniconda3/envs/cobra/lib/python3.8/site-packages/cobra.py", line 482, in count_seq
    a = open(fasta_file, 'r')
FileNotFoundError: [Errno 2] No such file or directory: 'COBRA_retrieved_for_joining/NODE_1990_length_17225_cov_13.396421_retrieved.fa'

Every time I try re-running, it fails at this stage with a FileNotFoundError for a different contig.
This is my Cobra command. I'm using the latest version (version 1.2.3).
cobra-meta -f contigs.fasta -q query_contigs.fasta -c coverage.tsv -m sorted_reads.bam -a metaspades -mink 21 -maxk 127

My query_contigs.fasta file contains about 2300 contig sequences. I've also attached the log file of the run.
log.txt
Any advice on how to fix this error and get Cobra running will be appreciated.
Thanks!

Hi,
Sorry to hear that you have problem running COBRA.
We noticed this issue and have been working on it.
Could you please let me know (1) did you re-run on the same sample? (2) every time the FileNotFoundError issue is for a different contig? (3) did you meet this error for other samples?
Thank you.
Best,
LINXING

Hi @linxingchen,
(1) I removed the Cobra output folder and re-ran on the same sample.
(2) Yes, I've run Cobra 3 times and every time it gives a different contig: NODE_21535_length_4721_cov_9.622333, NODE_1990_length_17225_cov_13.39642 and NODE_13930_length_6078_cov_11.714670.
(3) I haven't tested on any other sample yet.
Thanks!

hi @Vini2 thanks for the information.
If possible please share me the "potential_join_path" file so I can have a look if these three are in the same path. We have been working on this but please give us more time to fix it. Thank you.

Hi @linxingchen,
Here is the file you requested.
COBRA_potential_joining_paths.txt
Let me know if you need further details.
Thanks for taking a look at this issue.

Thank you.
These three contigs are not in the same path, I have no idea why the file does not existed. I am wondering if you could run another sample and see if it will happen again.

Hi @linxingchen,
I did a bit of debugging and I think there are edge cases that are not handled when dealing with many contigs.
This time I got that NODE_30571_length_3853_cov_16.548864_retrieved.fa could not be found.
In line 1747 when calling summarize(contig), the error appears in line 575 which is in the else block within the else block. You have
item = is_subset_of(contig)

Then it tries to count sequences from item.
Here contig is NODE_111132_length_1779_cov_9.005448 which is a subset of NODE_30571_length_3853_cov_16.548864. Now item is NODE_30571_length_3853_cov_16.548864 which is an extended partial query. Hence, it does not get retrieved for joining (the file is not created).
I came across some more edge cases which I couldn't test out in detail.
How would you recommend running these contigs? Would running them one by one be better?

Hi @linxingchen,
I did a bit of debugging and I think some edge cases cause the errors.
This time I got that NODE_30571_length_3853_cov_16.548864_retrieved.fa could not be found.
In line 1747 when calling summarize(contig), the error appears in line 575 which is in the else block within the else block. You have
item = is_subset_of(contig)

Then it tries to count sequences from item.
Here contig is NODE_111132_length_1779_cov_9.005448 which is a subset of NODE_30571_length_3853_cov_16.548864 (or the other way around). Now item is NODE_30571_length_3853_cov_16.548864 which is an extended partial query. Hence, it does not get retrieved for joining (the file is not created).
I came across some more edge cases which I couldn't test out in detail.
How would you recommend running these contigs? I'm not sure how to check if a contig is a subset or not. Would running them one by one be better? Appreciate any suggestions.
I'll try running on another sample as well.
Thanks!

Hi @Vini2,
Thanks for taking a deep look at the issue. Sorry for my delayed reply.
Did you still run the previous same sample?
You will avoid the error if you run them one by one. However, at the end of day, I have to fix this issue, hopefully in the next week (stuck by grant proposal for now).
Best,
LINXING

Hi @Vini2,
Sorry for my delayed reply on this, @Hocnonsense re-wrote most parts  of the script, it will be great if you could try it (enclosed) and see if your issue has been resolved or not.
Thank you.
cobra_Hocnonsense.py.zip


Provide an easy way to iterate over available ports

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

Project coverage is 31.28%. Comparing base (c1172a3) to head (d4fb10b).

Files
Patch %
Lines

pkg/ovp8xx/portinfo.go
0.00%
44 Missing :warning:

cmd/ovp8xx/cmd/ports.go
0.00%
26 Missing :warning:

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff             @@
##               v2      #12      +/-   ##
==========================================
- Coverage   33.83%   31.28%   -2.56%
==========================================
  Files          19       21       +2
  Lines         857      927      +70
==========================================
  Hits          290      290
- Misses        566      636      +70
  Partials        1        1

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

After adding the feature to filter the output with the go text/template package this became obsolete by this command:
ovp8xx get  --format '{{ range $port, $details := .ports }}[{{ $port }}] state: {{ $details.state }},{{print "\t"}}type: {{ $details.info.features.type }},{{print "\t"}}PCIC Port: {{ $details.data.pcicTCPPort }}{{println ""}}{{ end }}'


Add github action for elasticsearch otel integration tests

Signed-off-by: Ashmita Bohara<EMAIL_ADDRESS>
Which problem is this PR solving?
Adds integration test for Elasticsearch OpenTelemetry.
Part of https://github.com/jaegertracing/jaeger/issues/2645
Short description of the changes
Also refactors es-integration-test.sh to accept arg either "default" or "otel" otherwise fails.

Hi @yurishkuro
Updated the PR with the feedback. Thank you.

I'm seeing that error again: fatal: No names found, cannot describe anything.

Nice catch.


Integration of Quantization Framework for Binary Quantization with Indexing Flow

Description
This PR introduces changes to the indexing flow by integrating it with the Quantization Framework, specifically adding support for Binary Quantization. Additionally, the PR includes updates to the Quantization State to provide accurate RAM usage estimates for Quantization State instances.
Related Issues
Resolves #[Issue number to be closed when this PR is merged]

Check List

[ ] New functionality includes testing.
[ ] New functionality has been documented.
[ ] API changes companion pull request created.
[ ] Commits are signed per the DCO using --signoff.
[ ] Public documentation issue/PR created.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

This failure in Integ tests for Window is un related to this PR
REPRODUCE WITH: gradlew ':test' --tests "org.opensearch.knn.indices.ModelDaoTests.testCreate" -Dtests.seed=4AD3C3C3F1DEFD7A -Dtests.security.manager=false -Dtests.locale=teo-UG -Dtests.timezone=America/Eirunepe -Druntime.java=21
org.opensearch.knn.indices.ModelDaoTests > testCreate FAILED
    java.lang.AssertionError
        at __randomizedtesting.SeedInfo.seed([4AD3C3C3F1DEFD7A:759903A4454CD0FB]:0)
        at org.junit.Assert.fail(Assert.java:87)
        at org.junit.Assert.assertTrue(Assert.java:42)
        at org.junit.Assert.assertTrue(Assert.java:53)
        at org.opensearch.knn.indices.ModelDaoTests.testCreate(ModelDaoTests.java:110)


Devika finishes task, but doesn't show the code

Describe the bug
A clear and concise description of what the bug is.
Devika finishes task, but doesn't show the code:

To Reproduce
Steps to reproduce the behavior:

Go to '...'
Click on '....'
Scroll down to '....'
See error

Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):

OS: [e.g. iOS]
Browser [e.g. chrome, safari]
Version [e.g. 22]

Smartphone (please complete the following information):

Device: [e.g. iPhone6]
OS: [e.g. iOS8.1]
Browser [e.g. stock browser, safari]
Version [e.g. 22]

Additional context
Add any other context about the problem here.

needs to be optimised freezes are present

fetch the latest changes. already fixed

Many thanks! It works!


Terminating app due to uncaught exception 'CALayerInvalidGeometry', reason: 'CALayer position contains NaN: [155 nan]'

Terminating app due to uncaught exception 'CALayerInvalidGeometry', reason: 'CALayer position contains NaN: [155 nan]'
I have used FSCalendar for displaying dates, When I vertically scroll up, it works perfectly fine but when I scroll down, it just crashes and displays this error?
How should I resolve this or how should I stop my calendar to scroll vertically?

Same thing happened to me. I tried to follow FSCalendarScopeExampleViewController and put it my own view controller.  Then it will crash and throw same error.

same here. any help?

Guys, could you please provide at least the stack trace or some more precise info if you expecting for some help here.

here's what I got every time I try to use handleScopeGesture :
error in __connection_block_invoke_2: Connection interrupted
2017-06-29 15:41:43.103844 Mohandisi[3850:163138] *** Terminating app due to uncaught exception 'CALayerInvalidGeometry', reason: 'CALayer position contains NaN: [207 nan]'
*** First throw call stack:
(0x190fa01c0 0x18f9d855c 0x190fa0108 0x1942a5db8 0x1942a5f2c 0x1942a64c4 0x196de2c40 0x196e06efc 0x196e98924 0x1001124d0 0x100154390 0x10014cc88 0x10014b978 0x1000cd664 0x1973b783c 0x1973baf44 0x196f7c614 0x196e1ab54 0x1973aaf88 0x1973aaae8 0x1973a9da4 0x196e18d70 0x196de9858 0x1975d6cb8 0x1975d0720 0x190f4e278 0x190f4dbc0 0x190f4b7c0 0x190e7a048 0x1928fd198 0x196e54628 0x196e4f360 0x1001899dc 0x18fe5c5b8)
libc++abi.dylib: terminating with uncaught exception of type NSException

here's what I got every time I try to use handleScopeGesture :
error in __connection_block_invoke_2: Connection interrupted
2017-06-29 15:41:43.103844 ****[3850:163138] *** Terminating app due to uncaught exception 'CALayerInvalidGeometry', reason: 'CALayer position contains NaN: [207 nan]'
*** First throw call stack:
(0x190fa01c0 0x18f9d855c 0x190fa0108 0x1942a5db8 0x1942a5f2c 0x1942a64c4 0x196de2c40 0x196e06efc 0x196e98924 0x1001124d0 0x100154390 0x10014cc88 0x10014b978 0x1000cd664 0x1973b783c 0x1973baf44 0x196f7c614 0x196e1ab54 0x1973aaf88 0x1973aaae8 0x1973a9da4 0x196e18d70 0x196de9858 0x1975d6cb8 0x1975d0720 0x190f4e278 0x190f4dbc0 0x190f4b7c0 0x190e7a048 0x1928fd198 0x196e54628 0x196e4f360 0x1001899dc 0x18fe5c5b8)
libc++abi.dylib: terminating with uncaught exception of type NSException

i meet the same problem. and the stacks followed
*** Terminating app due to uncaught exception 'CALayerInvalidGeometry', reason: 'CALayer position contains NaN: [206 nan]'
*** First throw call stack:
(
0   CoreFoundation                      0x000000010543cb0b __exceptionPreprocess + 171
1   libobjc.A.dylib                     0x0000000104ea1141 objc_exception_throw + 48
2   CoreFoundation                      0x00000001054a5625 +[NSException raise:format:] + 197
3   QuartzCore                          0x000000010afcc0be _ZN2CA5Layer12set_positionERKNS_4Vec2IdEEb + 152
4   QuartzCore                          0x000000010afcc231 -[CALayer setPosition:] + 43
5   QuartzCore                          0x000000010afcc851 -[CALayer setFrame:] + 610
6   UIKit                               0x0000000105fecc99 -[UIView(Geometry) setFrame:] + 845
7   UIKit                               0x000000010601b096 -[UIScrollView setFrame:] + 149
8   UIKit                               0x000000010687887a -[UICollectionView setFrame:] + 615
9   FSCalendar                          0x00000001049081f8 -[UIView(FSCalendarExtensions) setFs_top:] + 232
10  FSCalendar                          0x000000010491bd13 -[FSCalendarTransitionCoordinator performPathAnimationWithProgress:] + 1331
11  FSCalendar                          0x00000001049134c4 -[FSCalendarTransitionCoordinator scopeTransitionDidUpdate:] + 1828
12  FSCalendar                          0x0000000104911e37 -[FSCalendarTransitionCoordinator handleScopeGesture:] + 151
13  FSCalendar                          0x00000001048eabeb -[FSCalendar handleScopeGesture:] + 155
14  UIKit                               0x000000010647dc09 -[UIGestureRecognizerTarget _sendActionWithGestureRecognizer:] + 57
15  UIKit                               0x0000000106485a07 _UIGestureRecognizerSendTargetActions + 109
16  UIKit                               0x00000001064833bb _UIGestureRecognizerSendActions + 225
17  UIKit                               0x000000010648267e -[UIGestureRecognizer _updateGestureWithEvent:buttonEvent:] + 981
18  UIKit                               0x000000010646ee02 _UIGestureEnvironmentUpdate + 1219
19  UIKit                               0x000000010646e8f3 -[UIGestureEnvironment _deliverEvent:toGestureRecognizers:usingBlock:] + 484
20  UIKit                               0x000000010646daba -[UIGestureEnvironment _updateGesturesForEvent:window:] + 274
21  UIKit                               0x0000000105fb9b9a -[UIWindow sendEvent:] + 4092
22  UIKit                               0x0000000105f667b0 -[UIApplication sendEvent:] + 352
23  UIKit                               0x0000000106749adc __dispatchPreprocessedEventFromEventQueue + 2926
24  UIKit                               0x0000000106741a3a __handleEventQueue + 1122
25  CoreFoundation                      0x00000001053e2c01 CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION + 17
26  CoreFoundation                      0x00000001053c80cf __CFRunLoopDoSources0 + 527
27  CoreFoundation                      0x00000001053c75ff __CFRunLoopRun + 911
28  CoreFoundation                      0x00000001053c7016 CFRunLoopRunSpecific + 406
29  GraphicsServices                    0x000000010a7ffa24 GSEventRunModal + 62
30  UIKit                               0x0000000105f490d4 UIApplicationMain + 159
31  venus                               0x00000001047a9b0f main + 111
32  libdyld.dylib                       0x000000010879965d start + 1
33  ???                                 0x0000000000000001 0x0 + 1

Thank you @honghom212, this is much better.

I too was getting this exception, but I realized that the calendar delegate and dataSource were not configured. The exception disappeared after I added them.

@ravi-enc thx, u are right. the problem is solved.

@WenchaoD looks like a good reason to add some assert to avoid such issues in the future.

I'm also facing the same problem even I declared delegate/data source.  See below,
Stack Trace:
Uncaught exception: CALayer position contains NaN: [160 nan]
libc++abi.dylib: terminate_handler unexpectedly threw an exception.
Any help?

If you get an exeption with 'CALayerInvalidGeometry', you need to implement the following delegate method:
- (void)calendar:(FSCalendar *)calendar boundingRectWillChange:(CGRect)bounds animated:(BOOL)animated;
In my case, I change a layout constraint for the calendar height:
 func calendar(_ calendar: FSCalendar, boundingRectWillChange bounds: CGRect, animated: Bool) {
        self.calendarHeightConstraint.constant = bounds.height
        self.view.layoutIfNeeded()
    }

This is still happening on the latest version.

Same problem here. I've configured the delegate and the data source, as well as the delegate method mentioned by @MintBerryCrunch.
Here's my call stack:
*** Terminating app due to uncaught exception 'CALayerInvalidGeometry', reason: 'CALayer position contains NaN: [187.5 nan]' *** First throw call stack: ( 	0   CoreFoundation                      0x00000001084401bb __exceptionPreprocess + 331 	1   libobjc.A.dylib                     0x00000001079de735 objc_exception_throw + 48 	2   CoreFoundation                      0x0000000108440015 +[NSException raise:format:] + 197 	3   QuartzCore                          0x000000010ee331a3 _ZN2CA5Layer12set_positionERKNS_4Vec2IdEEb + 141 	4   QuartzCore                          0x000000010ee22293 -[CALayer setPosition:] + 57 	5   QuartzCore                          0x000000010ee229ef -[CALayer setFrame:] + 561 	6   UIKitCore                           0x0000000111d1f086 -[UIView(Geometry) setFrame:] + 336 	7   UIKitCore                           0x0000000111cb3247 -[UIScrollView setFrame:] + 161 	8   UIKitCore                           0x00000001110a43ac -[UICollectionView setFrame:] + 524 	9   FSCalendar                          0x000000010719e859 -[UIView(FSCalendarExtensions) setFs_top:] + 281 	10  FSCalendar                          0x00000001071ac8cf -[FSCalendarTransitionCoordinator performPathAnimationWithProgress:] + 783 	11  FSCalendar                          0x00000001071a8a2e -[FSCalendarTransitionCoordinator scopeTransitionDidUpdate:] + 1134 	12  FSCalendar                          0x00000001071a7a79 -[FSCalendarTransitionCoordinator handleScopeGesture:] + 185 	13  FSCalendar                          0x000000010718102e -[FSCalendar handleScopeGesture:] + 158 	14  UIKitCore                           0x000000011142bb81 -[UIGestureRecognizerTarget _sendActionWithGestureRecognizer:] + 57 	15  UIKitCore                           0x0000000111434a5f _UIGestureRecognizerSendTargetActions + 109 	16  UIKitCore                           0x0000000111432244 _UIGestureRecognizerSendActions + 305 	17  UIKitCore                           0x000000011143149c -[UIGestureRecognizer _updateGestureWithEvent:buttonEvent:] + 858 	18  UIKitCore                           0x0000000111422f20 _UIGestureEnvironmentUpdate + 1329 	19  UIKitCore                           0x00000001114229ad -[UIGestureEnvironment _deliverEvent:toGestureRecognizers:usingBlock:] + 478 	20  UIKitCore                           0x000000011142271d -[UIGestureEnvironment _updateForEvent:window:] + 200 	21  UIKitCore                           0x000000011189278a -[UIWindow sendEvent:] + 4058 	22  UIKitCore                           0x0000000111870394 -[UIApplication sendEvent:] + 352 	23  UIKitCore                           0x00000001119455a9 __dispatchPreprocessedEventFromEventQueue + 3054 	24  UIKitCore                           0x00000001119481cb __handleEventQueueInternal + 5948 	25  CoreFoundation                      0x00000001083a5721 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17 	26  CoreFoundation                      0x00000001083a4f93 __CFRunLoopDoSources0 + 243 	27  CoreFoundation                      0x000000010839f63f __CFRunLoopRun + 1263 	28  CoreFoundation                      0x000000010839ee11 CFRunLoopRunSpecific + 625 	29  GraphicsServices                    0x000000010d8c61dd GSEventRunModal + 62 	30  UIKitCore                           0x000000011185481d UIApplicationMain + 140 	31  [APP NAME]                         0x0000000106ac06a7 main + 71 	32  libdyld.dylib                       0x000000010b059575 start + 1 	33  ???                                 0x0000000000000001 0x0 + 1 ) libc++abi.dylib: terminating with uncaught exception of type NSException


How can i integrate this when not using node js as the server?

For example if i have laravel as the server and angular js as the frontend

This is a node module; you can't use it with php. See pesapal's documentation for sample php code.


Histogram rework

In all honesty, the source code of the histograms was a complete mess. Could very well be the worst in all the JuliaDynamics org. Everything unintuitive, a mess of 4x code duplication, leftover from all the way back that this was in ChaosTools.jl. Figured, since we are re doing things the proper way, might do it here as well.
The list of changes is rather huge. The commit history however outlines all changes. I was very methodical with the commits. Major things to highlight:

Source code has been dramatically reduced. Once we also delete the final old stuff, I think the source code has been reduced 5x, maybe even 6x.
Renamed some things: _non0hist -> fasthist, VisitationFrequency -> ValueHistogram (the Visitation remains as an alias).
Re-wrote the edgelength code so that it is type stable, performant, and return static vectors.
I'm now using nextfloat for the edgelengths with integers, rather than the arbitrary 100, which gives much more intuitive results.
fasthist code has been re-written. The core version now is the one that counts occurrences. All other versions just prepare the (integer) bins and give that to the main version.
I've set up a code infastructure that will allow different binning schemes in the future like the triangular. See the encode_as_bins function and the AbstractBinEncoder.
the existing binhist function will become just the events function once I merge this and start working on the events.

TODOs, @kahaaga :

I had no idea that the source code had marginal, join, and this weird 5th way to specify ε in the binning. I know nothing about them. Are they used in the transfer operator? If so, all this stuff needs to be moved into other files. I have no idea if they work with my changes. (of course, if these things are for the transfer operator, they should be modified in a different PR)
All of this infastructure of marginal histogram visits, I had no idea about, and it wasn't really documented anywhere... Is this part of the VisitationFrequency stuff? That's what I'm working on in this PR.
encode_box_visits.jl file must be deleted or moved to where it is actually used. It is not used in current VisitationFrequency code.

I have started working on the events code, although I am not sure where to PR it to. I guess I'll PR this into main, and until this is merged into main, it will also have all of its commits here.

@Datseris I'll review this PR and address my TODOS tonight. If you have any more changes before that, just keep them coming.

I'm done with the PR and I've tested it extensively now (only for the "normal" histograms)

and this weird 5th way to specify ε in the binning

The 5th way of binning is clarified in #118 (solution: use a separate binning type, as you suggested @Datseris ). This should be addressed before releasing 2.0.

Great effort! Unless I've commented on it, I like the suggested changes a lot and think they are ready to merge as are (when tests pass).

Still confused, isn't #117 necessary to be merged first, and then this PR?

Still confused, isn't https://github.com/JuliaDynamics/Entropies.jl/pull/117 necessary to be merged first, and then this PR?

Yes, definitiely. It didn't help that the PR was against main and not this histogram_rework branch. We'll need to merge #119 before merging this.

So my understanding after #119 was to merge this one in so that I can continue working on the events_and_probabilities. So I merged it in...


Add Worksheet.add_data_validation

See https://openpyxl.readthedocs.io/en/stable/api/openpyxl.worksheet.worksheet.html?highlight=worksheet#openpyxl.worksheet.worksheet.Worksheet.add_data_validation

@MartinThoma added the missing import, we should be good now.
What threw me off was that worksheet.pyi already contained a referenced to DataValidationList without importing it:
https://github.com/MartinThoma/openpyxl-stubs/blob/b8bc5b5a0dae1d67a5455f5288fdf48bf7631965/openpyxl-stubs/worksheet/worksheet.pyi#L52
I see now that this is in implementation code, which I assume is ignored in .pyi file? Can it just be removed?

Huh, intersting. Yes, I guess it could be removed.
Thank you for fixing it! And thank you for the PRs :heart:

0.1.25 was just released with this fix


Docs of Setup CouchDB is needed.

From Forum:
Basics

Self-hosting limitations.
Setup CouchDB ( bare? / dockerimage? )
Preferred configurations
Expose to the internet by ngrok for testing.

Additional

Expose to the internet by own domain and the setup the reverse proxy with SSL.

I think if I encourage someone to host and maintain a server. End to End encryption is needed to reduce the impacts of misconfigurations and/or vulnerabilities.

FYI - https://github.com/vrtmrz/obsidian-livesync/issues/17 has a working docker-compose.yml - just add another volume line with the local.ini as shown by @vrtmrz
    volumes:
        - ./conf/couchdb/local.ini:/opt/couchdb/etc/local.ini

and put an .env file like this in the same dir as your docker-compose.yml:
COUCHDB_SERVER=<fully qualified server name>
COUCHDB_USER=<(to be created) couchdb user name>
COUCHDB_PW=<(to be created) couchdb password>

Caddy Docker Proxy will get a LetsEncrypt cert on its own and you should be all set...

Not there yet for multiple devices, see https://github.com/vrtmrz/obsidian-livesync/issues/20

For me, this docker-compose.yml together with the following CouchDB local.ini works now:
[chttpd]
require_valid_user = true

[chttpd_auth]
require_valid_user = true

[httpd]
WWW-Authenticate = Basic realm="couchdb"
enable_cors = true

[cors]
origins = app://obsidian.md, capacitor://localhost
credentials = true
headers = accept, authorization, content-type, origin, referer
methods = GET, PUT, POST, HEAD, DELETE

Android probably has a 3rd origin, haven't tested that yet, will update as soon as I have

Thank you for awsome information! It's very helpful!
I'm making the repo for docker-compose.
After I tested to establish bland new server by the repo.
It will be public.
And if you don't mind, may I add your name(arminus is ok?) into the docker-compose.yml?

And if you don't mind, may I add your name(arminus is ok?) into the docker-compose.yml?

sure

I wrote simple instructions and docker-compose.yml on new repo
I really appreciate your investigations and giving me your docker-compose.yml

it took 26 days but was finally done :)

Can we put it behind a forward authentication through for example authentik ?

This is the first time I have heard of Authentik. This is fantastic. (I thought about adopting it personally).
However, currently, Self-hosted LiveSync cannot use this. It cannot open the UI for authentication during the replication connection. (However, if it were possible, it would make easier connection configuration, especially in the office or lab environment. It is very interesting).
From Authentik's functional point of view, if it could be opened, it would at least be available in Proxy Provider.
I regret to say this, but this is now a situation.

@vrtmrz dang, i was here hoping for authentik as well.
if the device i am using has already been logged in to authentik and should not need interaction with authentication, is it still not able to be forwarded by authentik to the domain, hands free?


AzureData.getDocument() : No Internet connection

When the internet connection is not available on the device,  AzureData.getDocument() is returning successful and all other data members are set to null. Is there any flag or error to check that the call actually failed because of no connectivity?

Closing this issue as we aren't planning any further changes to the Track 1 SDK.


Adapt graphql-config format

Would you consider making the project comply to the graphql-config format?
The goal is the simplify and unify the way people configure their development tools for their GraphQL endpoint/schema.

Hi Johannes.
As promised, I've emailed you my thoughts. My recommendation is as follows:
The JSON shape of request, and file in graphql.config.json is unlikely to change. I think this standardized shape should be the thing that various projects agree upon, since they can have various other technical requirements and preferences. A small github repo documenting the shape should do the trick.
So, if .graphqlrc is able to reference a graphql.config.json file, or any other compliant file, things can work together. I'll leave the naming of the property up to you. Maybe something like:
{
 "require": "./graphql.config.json"
}

Best regards,
Jim.

Closing this issue. Will create a new issue when the technical details have been worked out.

@jimkyndemeyer What's the status of this? This feature would be much appreciated.

@jimkyndemeyer I'd love to pick up the ball on this one again. Would you be open for a collaboration? 🙂

@schickling Yeah, still open to collaborate on this. Unfortunately I don't have any free time to work on features for this project the next three months due to personal commitments.
In the meantime, I'd like to see https://github.com/graphcool/graphql-config/issues/20 resolved. The reason I'd like that issue resolved is that it's a breaking change, and we'd need to figure out a migration path for plugin users. This also ties into the work @asiandrummer is doing on integrating the GraphQL language service with the plugin.
Finally, Relay Modern support provides even more value for developers, so that has higher priority.


Unpinning Plotly

Hi there, I'm using pyGSTi in a project where I'd also like to use Plotly 4.1. I noticed #55 where there's a remark about unpinning the Plotly version in the future, and it looks like there was an attempt to do that before it was pinned again to 3.10. Just curious what the path to unpinning this looks like?

Good question!
An API change in plotly 4.1 broke one of our tests, but I'm not sure it actually broke the underlying functionality. So for the time being, I think you should be able to just use plotly 4.1 without breaking pygsti. Please let us know if that breaks anything.
@enielse Thoughts? Here's the build that broke on import plotly.plotly. Removing that import doesn't actually break the test -- we could push a patch unpinning plotly and removing that import, but I'll want to test across python versions first.

I haven't looked into this on the pyGSTi side, but I'm hitting this with Plotly 4.1.0:
>>> from pygsti.construction import std1Q_XY
---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
<ipython-input-3-f5ce25d46596> in <module>
----> 1 from pygsti.construction import std1Q_XY

~/miniconda3/envs/w/lib/python3.6/site-packages/pygsti/construction/std1Q_XY.py in <module>
     12 from . import gatestringconstruction as _strc
     13 from . import gatesetconstruction as _setc
---> 14 from . import stdtarget as _stdtarget
     15 from collections import OrderedDict as _OrderedDict
     16

~/miniconda3/envs/w/lib/python3.6/site-packages/pygsti/construction/stdtarget.py in <module>
     16
     17 from . import stdlists as _stdlists
---> 18 from .. import objects as _objs
     19 from ..tools import mpitools as _mpit
     20

~/miniconda3/envs/w/lib/python3.6/site-packages/pygsti/__init__.py in <module>
     13 from . import construction as cst
     14 from . import objects as obj
---> 15 from . import report as rpt
     16
     17 from .algorithms.core import *

~/miniconda3/envs/w/lib/python3.6/site-packages/pygsti/report/__init__.py in <module>
     10 # the package namespace
     11 from .reportables import *
---> 12 from .factory import *
     13 from .workspace import Workspace
     14 from .notebook import Notebook

~/miniconda3/envs/w/lib/python3.6/site-packages/pygsti/report/factory.py in <module>
     24 from .. import _version
     25
---> 26 from . import workspace as _ws
     27 from . import autotitle as _autotitle
     28 from . import merge_helpers as _merge

~/miniconda3/envs/w/lib/python3.6/site-packages/pygsti/report/workspace.py in <module>
     24 from ..baseobjs import CustomDigestError as _CustomDigestError
     25
---> 26 from . import plotly_plot_ex as _plotly_ex
     27 from . import merge_helpers as _merge
     28

~/miniconda3/envs/w/lib/python3.6/site-packages/pygsti/report/plotly_plot_ex.py in <module>
      9 import os as _os
     10 from plotly import tools as _plotlytools
---> 11 from plotly.offline.offline import _plot_html
     12 #from plotly.offline.offline import get_plotlyjs
     13 #from plotly.offline.offline import __PLOTLY_OFFLINE_INITIALIZED

ImportError: cannot import name '_plot_html'

Just double checked on this, and the above is due to my mistakenly being on an older tag of pyGSTi. Indeed things do seem to work on the latest tag. Sorry for the false alarm.


When the initial element of the tuple is a rest element, it is not possible to correctly infer the type of the initial element.

🔍 Search Terms
initial element of the tuple is a rest element
✅ Viability Checklist

[X] This wouldn't be a breaking change in existing TypeScript/JavaScript code
[X] This wouldn't change the runtime behavior of existing JavaScript code
[X] This could be implemented without emitting different JS based on the types of the expressions
[X] This isn't a runtime feature (e.g. library functionality, non-ECMAScript syntax with JavaScript output, new syntax sugar for JS, etc.)
[X] This isn't a request to add a new utility type: https://github.com/microsoft/TypeScript/wiki/No-New-Utility-Types
[X] This feature would agree with the rest of our Design Goals: https://github.com/Microsoft/TypeScript/wiki/TypeScript-Design-Goals

⭐ Suggestion
type T1 = [...string[], number, boolean]

declare const head: T1[0]
         // Actual: string | number | boolean
         // Expected: string | number

📃 Motivating Example

💻 Use Cases
https://github.com/microsoft/TypeScript/issues/56883

I actually posted this same issue/proposal long form, short form.  The latter is labeled as a bug, and is open.
I also have a pull for it, which needs to be updated to the latest version and resubmitted.

@fatcerberus
Let me clarify my statement.
I am making two assumptions:

that the current assignment behavior is correct
that correct indexing behavior should follow exactly the results of assignment behavior

@jcalz asserts here that "Yes, that type (arr[0]) is wider than it should be, but that's not a bug, it's a design decision."
In other words, that my assumption 2 is incorrect.
Certainly there are times when economy of calculation dictates using wider types.  Other times it may just be expedient coding.
Either of those would enough to invalidate my assumption 2.
Therefore I will withdraw my statement that this must be a bug, and instead assume it is a feature request.

@13OnTheCode - As a feature request, I believe more explanation is required.
Currently, you have your motivating example code listed in the suggestion section, and the motivating example and use cases sections are empty.
Here is an example:

Suggestion

Indexed types should correspond exactly to results of assignment.

You could also give an algorithm that computes that.
One consideration - if it takes O(N) to compute each indices type individually, where N is the length of the tuple,
then to compute all N types individually would take O(N^2).
However, it should be possible to compute all the indices types in sequence together in O(N) time, and cache the result.
To do that correctly, it is necessary to understand in detail the corner cases of the current assignment algorithm.

...that correct indexing behavior should follow exactly the results of assignment behavior

Yes, this assumption is incorrect.  The PR that implemented mid/lead rest elements (https://github.com/microsoft/TypeScript/pull/41544) specifically calls out the current indexing behavior, suggesting it's intentional (or at least a known-upfront design limitation).
From #41544:

Also note that indexing a tuple type beyond its starting fixed elements (if any) yields a union type of all possible element types


Cedar/Command: Add GenX25519 and GetPublicX25519 commands

VPN Tools>GenX25519
GenX25519 command - Create new X25519 keypair

Private key: yH1560qrKTC17VRDxvhrz90WjMn2YpyxbPXkSH1OknM=
Public key: vpiJEOy7KYzZjbMNb9ycGJJzOFST6Y3pToWRKHTMOFw=

The command completed successfully.

VPN Tools>GetPublicX25519
GetPublicX25519 command - Retrieve public X25519 key from a private one
Private key: yH1560qrKTC17VRDxvhrz90WjMn2YpyxbPXkSH1OknM=

Public key: vpiJEOy7KYzZjbMNb9ycGJJzOFST6Y3pToWRKHTMOFw=

The command completed successfully.

VPN Tools>GetPublicX25519 yH1560qrKTC17VRDxvhrz90WjMn2YpyxbPXkSH1OknM=
GetPublicX25519 command - Retrieve public X25519 key from a private one

Public key: vpiJEOy7KYzZjbMNb9ycGJJzOFST6Y3pToWRKHTMOFw=

The command completed successfully.

VPN Tools>

GenX25519 command - Create new X25519 keypair
Help for command "GenX25519"

Purpose:
  Create new X25519 keypair

Description:
  Use this to create a new X25519 keypair, which can be used for WireGuard.
  Both the private and public key will be shown.
  The public key can be shared and is used to identify a peer.
  Also, it can always be retrieved from the private key using the GetPublicX25519 command.
  The private key should be kept in a secure place and never be shared.
  It cannot be recovered once lost.

Usage:
  GenX25519

GetPublicX25519 command - Retrieve public X25519 key from a private one
Help for command "GetPublicX25519"

Purpose:
  Retrieve public X25519 key from a private one

Description:
  Use this if you have a private X25519 key and want to get its corresponding public key.

Usage:
  GetPublicX25519 [private]

Parameters:
  private - The private X25519 key you want to get the corresponding public key of.

@chipitsine Is LibreSSL outdated?
/tmp/cirrus-ci-build/src/Mayaqua/Crypto/Key.c:109:10: warning: implicit declaration of function 'EVP_PKEY_new_raw_public_key' is invalid in C99 [-Wimplicit-function-declaration]
                return EVP_PKEY_new_raw_public_key(id, NULL, key->Data, key->Size);
                       ^
/tmp/cirrus-ci-build/src/Mayaqua/Crypto/Key.c:109:10: warning: incompatible integer to pointer conversion returning 'int' from a function with result type 'void *' [-Wint-conversion]
                return EVP_PKEY_new_raw_public_key(id, NULL, key->Data, key->Size);
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/tmp/cirrus-ci-build/src/Mayaqua/Crypto/Key.c:113:10: warning: implicit declaration of function 'EVP_PKEY_new_raw_private_key' is invalid in C99 [-Wimplicit-function-declaration]
                return EVP_PKEY_new_raw_private_key(id, NULL, key->Data, key->Size);
                       ^
/tmp/cirrus-ci-build/src/Mayaqua/Crypto/Key.c:113:10: warning: incompatible integer to pointer conversion returning 'int' from a function with result type 'void *' [-Wint-conversion]
                return EVP_PKEY_new_raw_private_key(id, NULL, key->Data, key->Size);
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/tmp/cirrus-ci-build/src/Mayaqua/Crypto/Key.c:164:7: error: use of undeclared identifier 'EVP_PKEY_X25519'; did you mean 'KEY_X25519'?
        case EVP_PKEY_X25519:
             ^~~~~~~~~~~~~~~
             KEY_X25519
/tmp/cirrus-ci-build/src/Mayaqua/Crypto/Key.h:12:2: note: 'KEY_X25519' declared here
        KEY_X25519,
        ^
/tmp/cirrus-ci-build/src/Mayaqua/Crypto/Key.c:167:7: error: use of undeclared identifier 'EVP_PKEY_X448'
        case EVP_PKEY_X448:
             ^
/tmp/cirrus-ci-build/src/Mayaqua/Crypto/Key.c:177:13: warning: implicit declaration of function 'EVP_PKEY_get_raw_private_key' is invalid in C99 [-Wimplicit-function-declaration]
                int ret = EVP_PKEY_get_raw_private_key(opaque, NULL, &size);
                          ^
/tmp/cirrus-ci-build/src/Mayaqua/Crypto/Key.c:200:13: warning: implicit declaration of function 'EVP_PKEY_get_raw_public_key' is invalid in C99 [-Wimplicit-function-declaration]
                int ret = EVP_PKEY_get_raw_public_key(opaque, NULL, &size);
                          ^

we need to refresh SSL requirements. LibreSSL is not in any sync with OpenSSL.
recent LibreSSL versions (we did not update for a while) support 25519
please ignore LibreSSL errors for now, I'll add them to backlog

Okay, thanks.


Return nil if sysctlbyname call fails

@Chilledheart This looks good. Any chance you can outline an issue that you are running into here?
Or this is purely to safeguard the code?
stringWithUTF8String: initialization from an empty string is still valid and won't crash, but I think you are right that this approach is better...
cc @richardjrossiii

There's also the chance for a TOCTTOU bug here, though not sure how we could work around it. One more reason to explicitly pass length to the NSString constructor.

@nlutsenko In fact the point is that, if sysctlbyname fails, answer is not guaranteed to be a null string since it is not initialized and therefore string might be a random string.

@Chilledheart yup, misread the variables. You are right - using malloc there is bad. Random string all the way.


Clickable (link)text should have the link icon

Currently the mouse-over icon does not change for clickable links, makes it not clear at all to the user that it can be clicked.

Year overview is clickable but no icon
https://nginx_timby.jack.jimber.org/#/personal/JimberKen

Year overview is clickable but no icon
https://nginx_timby.jack.jimber.org/#/personal/JimberKen

Biker is missing


Update git-repo-version to solve bug in ember-cli

Needed to solve https://github.com/ember-cli/ember-cli/issues/3129
Need to publish new version afterwards

Thank you :)

If you can bump a version number I'll update ember-cli


Custom 404 error page; dest not working if status is set

I'm trying to define a custom 404 error page with the following routes in now.json:
"routes": [
  { "handle": "filesystem" },
  { "src": "/.*", "dest": "/404.html", "status": 404 }
]

But it doesn't work as expected.

If status is set, the dest page is not shown.
If status is not set; the dest page is shown, but with a status code of 200. Which is no good for a 404 error page.

It seems that the behaviour when having both dest and status has recently changed — previously I wasn't allowed, receiving the follow error message: Cannot use both status and dest.
Use usage of both dest and status is used in this documentation example: https://zeit.co/docs/v2/routing/directory-listing/

We just fixed this. Thanks for the report @thomasjsn


Send email to the person in the list

In the case that the person doesn't pick up the phone, I can send a follow-up message to contact me back.

Done


patch: Clarify deltas default behavior

Clarified deltas default enabled behavior can't be disabled on devices above balenaOS 2.47.1
Signed-off-by: Vipul Gupta (@vipulgupta2048) <EMAIL_ADDRESS>

Please make sure to read the CONTRIBUTING document before opening the PR for relevant information on contributing to the documentation. Thanks!

@balena-ci I self-certify!

@balena-ci rebase


sbt 1.4.0: sbt.color flag does not work on CI

steps
Start a new project from the scala-seed g8 template (for example)
sbt new scala/scala-seed.g8

With sbt 1.4.0-M1 and older version
export CI=true
sbt -Dsbt.color=true test

Display colors in test results
With sbt 1.4.0-M2 and latest version (including 1.4.0 release)
export CI=true
sbt -Dsbt.color=true test

Does not display colors in test results
problem
Harder to see failing tests on CI when looking the result
Behavior not expected when setting sbt.color=true
expectation
With sbt 1.4.x
export CI=true
sbt -Dsbt.color=true test

Display colors in test results

Duplicated


Updates backend.sh message to use envvar value

Changes

Makes backend.sh message about activating virtual environment use name stored in local .env file.

Testing

Open a new tab and cd to the project directory.
Run deactivate if a virtual environment was activated.
Run ./backend.sh and see that the message tells you to activate the correct virtual environment name.
Change the value in .env for VENV_NAME and see that it changes in the output message.

Review

@richaagarwal
@chosak
@kurtrwall

This seems okay to me, with the big caveat of "we have too many setup scripts that interact with each other in an overly complicated way". One thing is, can we add a check before this to enforce that VENV_NAME is set? Since we're forcing use of bash in this script, we could do something like:
: "${VENV_NAME?Looking for virtualenv name in \$VENV_NAME}"

Although, as I write this, part of me thinks we should just remove this variable and the suggested workon message from this script. It assumes that people are using virtualenvwrapper (which they might not be), and then adds this other dependency on an external environment variable, which really has nothing to do with what this script is actually doing.

@chosak Sure, I'm fine with whatever. I just noticed this because due to legacy reasons with my involvement in the project my virtualenv is flapjack not cfgov-refresh so the instructions it spits out were wrong. Which direction do you want to go with this PR? Instead of adding logic to check if VENV_NAME is set here, I would suggest ensuring VENV_NAME has a default set further up. Not sure where we ended up on that earlier discussion around defaults.

@anselmbradford I don't feel strongly either. I notice that activate-virtualenv.sh already has the check for this environment variable, which seems to be the only place that it's used. I'd probably lean towards removing the reference to it here just to keep its use limited to that single place.

I agree with @chosak. If we're thinking about this from the "too many setup scripts that interact in a non-trivial way" problem @chosak mentioned, then I think the suggestion of removing the reference here is the ideal way to solve this problem.

@chosak @willbarton Removed the reference in https://github.com/cfpb/cfgov-refresh/pull/2325/commits/de97935f397b91c5721f716a180aaf309b746026

:shipit:

@anselmbradford I see there was some discussion above.  Is the goal of this PR now to just decouple activating the virtual environment from the backend.sh script?

@richaagarwal The instructions it gave in some cases was wrong, so yeah I removed those instructions per the earlier discussion.

@anselmbradford The title of the PR currently says "Updates backend.sh message to use envvar value" but it doesn't use any kind of envvar.  Could you update the title and description of the PR to reflect what it is - both to help me but mostly to avoid confusion in the future.

@richaagarwal Sure! Updated it

👍


feat: allow plugins to register str converters

What I did
Made it so that plugins can register converters that converts to str types.
Before, you would get a ConversionError saying you couldn't register this type.
NOTE: I am now realizing I don't actually need this feature (was a misunderstanding). However, it seems like something that should still exist?
How I did it
Added str with an empty list to the pre-defined list.
How to verify it
You can now register a converter that converts str in a plugin to
Checklist

[ ] All changes are completed
[ ] New test cases have been added
[ ] Documentation has been updated

It uses the type of those keys to figure out what converters to try, not sure how this change would interoperate with addresses.
Also, what types of conversions do you picture needing to make that end up back as string types for ABI? I would think most of the time you'd just want the string to translate directly in the ABI layer.


Failure to connect to Central

I've been trying to connect the module to my BD Central service on two different PC's. Both PC's have been running both BD Central and Companion and both machines have no issues connecting the vMix module to vMix. I get connection failure using the Central web UI address (same as PC's) in this case <IP_ADDRESS> and <IP_ADDRESS>. Companion version 3.2 Beta.

@atsnelson What does the error say in the Companion log?

Hi Bryce. Thanks for reaching out. This could totally be a fault at my end. I'm just not sure what else to try. I've attached a screen shot of the companion UI. Error is under status "connection failure". Keep in mind I'm using the 3.2 Beta version of Companion because I didn't think your version <IP_ADDRESS> was in the current stable version? Cheers Jason

@atsnelson Thanks for clarifying. If you click on the tab that says “log” in the upper right, are there any additional error messages?

Nothing shows in the log unfortunately. I have noticed something though. If  I set the device IP to <IP_ADDRESS> it just set there saying connecting but doesn't and if I add the port <IP_ADDRESS>:3020 it says connection failure straight away.

I tried turning off Windows10 firewall to see if that allowed the BD Central module to connect, unfortunately not.,

@atsnelson You should not enter the port, only the IP address. The module/API use a different port for communication.
What happens if you open the module log (the >_ icon next to trash can icon on the module) and then restart the module? Are there any errors in that log?

Okay so the first time Companion is started. the BD Central status says connecting (but doesn't) If I click on the label to check the device IP and then click save, the status after 2 seconds changes to connection failure. It does this until companion is shut down and restarted. Here's a screen shot of the module log. I stopped it and restarted. Cheers Jason

Alright thank you. And just to be clear: this works when Central and Companion are on different computers, right? The only issue is when they're on the same machine?

No. I haven’t tried it like that. I’ve tried two computers both with Companion and BD Central. Not across a network. Cheers

I'm also not able to connect

I am also unable to connect. Same error as @pricard32. Using companion ver 3.1.2 (stable)

@pricard32 @fishbrainsD For your specific errors, please try the 3.2 beta. The version shipped with 3.1.2 isn't updated for v3. Let me know if you still get the error on 3.2

Still not working for me, but different errors.
Same as : @atsnelson
Tested Central + Companion on the same computer
I've tried with loopback IP and actual IP.

Thank you @bryce-seifert I have tried it with 3.2 beta and it now says it is connected. All my sources and destinations etc are listed when I create a button. However, the buttons I have created to connect sources and destinations do not seem to so anything. I am using the web buttons and I have tried this with individual destinations and groups.  There is nothing in the module log after pressing a button.  Should there be?

@pricard32 @fishbrainsD @atsnelson
I found/fixed some bugs that I hope address the issues. There are in the very latest 3.2 beta.
Please give this a try, and let me know how it goes.

I got confirmation that the latest beta solved this issue for some on the Facebook group, so I'm going to close. Let me know if there are still issues.

Yes this latest beta is working for me. Thanks @bryce-seifert


Assurance React Native badge not showing the right version

The latest @adobe/react-native-aepassurance build works with the latest AEP wrappers, only the 2.0.1  build works with other ACP wrappers. The current npm badge always shows the latest version, now manually replaced it with a hyperlink link:

Also updated the install guidance to install the assurance wrapper with a specific version.

@cacheung  thank you for reporting the issue. https://github.com/AdobeDocs/acp-mobile-sdkdocs/issues/58


The prefix command's set prefix is reset to default on restart

as the title says

If you do not set up a provider this is the expected behaviour because it only get saved in-memory.


Crash when breaking top half of double slab when theres a slab on top

Hello! I am currently running a 1.12.2 Forge server and tried adding this mod to the pack. When I tested this with an alternating tower of wood and cobblestone slabs I find that when I break a top half slab in this tower my client crashes, although the server keeps running. I tried adding this mod to this mod pack  so there's most likely a mod conflict. If you happen to know whats going on that'd be great! Heres a log:
crashlog.txt

Should be fixed in the latest version!

Was able to confirm the latest version no longer crashes, thanks!


Can we expose offsets up into the Consumer?

Thinking aloud, I can imagine certain usecases where the consumer might want to hold onto their current offset, partition tuple for logging, etc.

So I can answer this now, here's the answer for posterity!
On JRuby, since we're relying on the "high level consumer" API from Kafka's client libraries, we cannot get access to the offset being consumed. It is not exposed. it's possible to get the offset when implementing a "simple" (read: basic) consumer but then the user is responsible for implementing their own leader following and error handling code. I'm exploring this work in my beetle experimenting, which might prove useful at some point in the future here.
For MRI, I believe we can get at the offsets, but I do not believe it is worth introducing without API symetery between JRuby and MRI


Migrate Custom Async Reconcile Flows to Controller-Based Reconcile Flows

Tell us about your request
Both the Pricing Provider and the Launch Template Provider have custom async reconcile flows to hydrate their caches on startup. In the pricing provider's case, it continually refreshes the cache.
This seems like a great fit for a standard Reconcile flow with the NewSingletonManagedBy singleton controller to reconcile and register similar to a standard controller. This unification will make the code easier to parse for new users.
An example of a similar "Singleton Controller" can be found here.
Tell us about the problem you're trying to solve. What are you trying to do, and why is it hard?
N/A
Are you currently working around this issue?
N/A
Additional Context
No response
Attachments
No response
Community Note

Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request
Please do not leave "+1" or "me too" comments, they generate extra noise for issue followers and do not help prioritize the request
If you are interested in working on this issue or have submitted a pull request, please leave a comment

Launch Provider Template will not need to be updated to a singleton controller as the provider only updates at creation.


Increasing http timeout for ec2metadata to 30 seconds

Problem
I would like to have AWS IAM credentials fetched from the EC2 metadata service rather than provided by way of a file or environment variables.
See: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-roles-for-amazon-ec2.html#instance-metadata-security-credentials
In order to achieve this we are using kube2iam. The problem we have observed is that the default timeout to ec2metadata in the golang sdk is quite short. (I believe it's 1 second).
This causes issues where ark fails to retrieve access keys from kube2iam with the following error in the ark controller log:
time="2018-01-16T19:04:06Z" level=error msg="error listing backups" error="rpc error: code = Unknown desc = AccessDenied: Access Denied\n\tstatus code: 403, request id: D8973E7C07118308, host id: xW8x2FdgzNtzSDhs+unUdpyE/mQ4MiAg1KbrWTk8E279gza3uAjQU+WU6eZFl9Tz/j00Gw+e8KQ=" logSource="pkg/controller/backup_sync_controller.go:80"

This is a known issue with kube2iam.
The solution appears to be to increase the timeout in the client SDK. The Python SDK (boto) supports a AWS_METADATA_SERVICE_TIMEOUT environment variable which could be used to solve the problem. Unfortunately, it seems that the golang SDK provides no such mechanism.
I know this is not an issue specifically with ark but since many people use kube2iam for temporary IAM credentials it is likely they will encounter this same issue.
Solution
This PR increases the ec2metadata client http timeout to 30 seconds which solves the problem.
If there is a better/more simple way to increase the timeout than what I've done in the PR that would be great.
I had to override the entire IAM credential provider chain just to change the defaults for the EC2RoleProvider.
Also, setting the timeout to 30 seconds was pretty arbitrary. I'm not sure why it would be an issue to set it this high (or even higher) as I have it set to the last provider in the credential chain.
Signed-off-by: Matt Schurenko<EMAIL_ADDRESS>

@mschurenko thanks for your PR! We're wrapping up the v0.7.0 release later this week, so we can look to get this in after then. Please see my comment about a behavioral change - let's discuss here the best way to get you what you need.

@ncdc as it turns out the problem was not solved by increasing the http.Client timeout (it was just a coincidence that it worked during my testing).
The problem appears to be a race condition with ark and kube2iam where ark fetches the credentials before kube2iam has discovered the pod. If I create an init container that sleeps for a few seconds then the problem goes away.
I'm not sure if we should try and fix this in ark so that it expires the credential cache if it gets an AccessDenied? It is a bit odd behaviour as ark is getting a valid access key from kube2iam, it is just the wrong access key.
Also let me know if I should just close this PR and open an issue. Increasing the http.Client timeout does work but, for us, it was not the actual cause of the problem.

@mschurenko since this isn't solving the problem, how about we close this PR and move it to an issue? Thanks!

Closing PR and will open an issue


stages/cloud-init: add new stage for configuring cloud-init

Add new org.osbuild.cloud-init stage, which currently allows to create configuration files for cloud-init under /etc/cloud/cloud.cfg.d. The stage` supports only a very limited subset of cloud-init configuration options, which is covering needs of RHEL AMI images.
The schema mandates that if the 'configuration_files' option is specified, then at least one configuration file must be defined. In addition each section of the configuration must contain at least one property (section or configuration option).
Add python3-pyyaml package to the F34-build testing manifest, because it is required for running and testing the new stage.
Regenerate all affected manifests.
Add test for the new stage.

Cool, thanks! I had to look twice to understand what is going on because it is so simple and just writes the options! Maybe comment, but I think it is fine!

Oh yeah, I was surprised myself how short and simple it was 😄

NB: The more I look at that "configuration_files" the weirder I find it, but we have it now in other stages, so let's keep it here as well.

As we discussed over Slack, I'll keep it as is for now. I'll be happy to help make it consistent in the future if needed!

I added a short comment for the create_configuration_file(), explaining why it is so simple and rebased the PR on top of the latest main. There were no additional changes.

Ehm... I had to regenerate test case data for the previously merged dracut.conf stage due to added python3-pyyaml into the f34-build.json manifest in this PR...


fixup: Schema refs to resources should include OutputSuffix

Introduced in #215

Updated swagger test to output formatted differences
Reformat: models/imported-subresources/project_A/testdata/swagger.expected
Add test case / model folder for this error with swagger output (eventing test already caught this for asyncapi)

This change is


material_select() default text options on initializer

Hi. I'm wondering if there is a way to change material_select() default behavior directly on the initializer.
As for now, when I call $("select").material_select(), the first option on my select is always "Select value".
I'd like to change this text as I am initializing the select. Something like
$("select").material_select(function(){   placeholder: "Filter" })

`

Choose your option
Option 1
Option 2
Option 3

Materialize Select
`
Changing the text of the disabled option. That is what material select should show by default after being initialized.


Support tabs on MarshalIndent

Fixes #253
Support for using tabs on calls to MarshalIndent like so:
json.MarshalIndent(v, "", "\t")

Todo:

[x] error check that mixed tabs and spaces are not supported
[x] tests

@taowen can you take a look at this one plz?

I stumbled upon this problem as well, the use of tabs caused a panic on my webserver after switching to this library.
Would love it if tabs were supported.


refactor for api version 5.0

Description
Refactor for compatibility with the proposed prismacloud-api package version 5.0.0.
Depends upon: https://github.com/PaloAltoNetworks/prismacloud-api-python/pull/99
Motivation and Context
Create the potential to merge the prismacloud-api package with the pcpi package:
https://github.com/PaloAltoNetworks/pc-python-integration
Clean up misleading configuration names, like specifying a username in access_key_id.
Allow configuration of just one API URL with SaaS (which can auto-configure its Compute API URL).
How Has This Been Tested?
pylint (I'm not familiar with this packages testing methodology.
Types of changes

New feature (non-breaking change which adds functionality)
Breaking change (fix or feature that would cause existing functionality to change)

Checklist

[x] I have updated the documentation accordingly.
[x] I have read the CONTRIBUTING document.
[x] I have added tests to cover my changes if appropriate.
[ ] All new and existing tests passed.

I will have to publish v5.0.0 for the remaining tests to pass, but wanted to confirm that everyone agrees with these configuration changes before doing that, as it would be difficult to roll back. Note that while this updates the code and documentation with new configuration file and environment variable names, this remains compatible with all of the old names.


Status of the library

Hi,
What is the status of this library?
Can it be used in production?

Yes. There's an example: https://github.com/thosakwe/dart_phaser_example

Keep in mind, you have to use "allowInterop(...)" in a lot of places, because of the structure of Phaser. Each function also must take a Game instance as a parameter.
Adding game states will also be cumbersome. In fact, I'm not sure they even work; haven't tried.
Anyways, this is just a Dart binding, and TypeScript works way better with Phaser.

https://github.com/thosakwe/phaser-ts-boilerplate might help

Great, the example works for me. I will try to play more with it now. I hope I won't need to use TypeScript ;)


Cleaner implementation

I kept finding myself needing more and more of the raw information from the Flowdock API. Instead adding those as attributes that get evaluated by the message_handler (and thus making things waaay more complicated) this seemed like the better approach.
Let's store the data (the hash for the incoming event) in the FlowdockMessage object. Then we can add methods to the message so that we can interrogate the message inside other addons.
This creates three useful methods:
FlowdockMessage#tags returns data['tags']
FlowdockMessage#thread_id returns data['thread_id']
FlowdockMessage#new_thread? returns data['id'] == data['thread']['initial_message']
If we wanted to add other methods we could do so easily.
Thoughts @bhouse

looks good, thanks @apanzerj! :+1:

released in v0.3.0


Rename django.contrib.admin.utils.lookup_needs_distinct to lookup_spawns_duplicates

Function is undocumented and was therefore renamed without deprecation in Django 4.0:
https://docs.djangoproject.com/en/4.0/releases/4.0/#miscellaneous

The undocumented django.contrib.admin.utils.lookup_needs_distinct() function is renamed to lookup_spawns_duplicates().

Thanks! Another small fix towards greatness.


nnictl: command not found

I've followed the instructions for installation on macOS Mojave 10.14.4 but when I try to run an example I get nnictl: command not found. I tried install using pip3 install nni and also installing from the source but for both I get the same thing.

Fixed it by running setup.py in nni, but this wasn't specified in the instructions.

我也碰巧遇到了这个问题，并且使用  running setup.py 的方法，但是问题依然存在，请问如何解决

我也碰巧遇到了这个问题，并且使用 running setup.py 的方法，但是问题依然存在，请问如何解决

安装好之后，可以尝试刷新 source ~/.bashrc
zsh 就是 source ~/.zshrc

Fixed it by running setup.py in nni, but this wasn't specified in the instructions

where did you find setup.py? I am running into the same issue!

Try to add /Users/{user_id}/Library/Python/3.7/bin folder to your PATH.
The nnictl binary file should be there.


Remove email checks (bug 1214844)

Remove email checks for Theme ownership transfer and in addon "Authors & License" screen.

Is there a HTTP end point this functionality hits that needs removing too?

There is and it's still being used in the "Contributors & More" section of the addon-edit screen. That's the screen that get's a bit refactoring in bug 1207807 so I thought that's not context of this PR.

That's cool then, as long as eventually we remove the HTTP end point ;)

Squashed and merged in 24d85149d3c6b201e67a75c411f4ba32b381f22c


Show devices globbing results in segfault

snc@snc-lab> show devices crpd*
Name                    State      Time                   Logmsg
=======================================================================================
Segmentation fault

expected result: show devices starting with names crpd

Verified on the demo VM where it was used, but not reproducable in other scenarios.
Believe fixed.


ID 11346 - 033123_501pmEST

Add here your WMS ID
General requirements

Information in the workshop is adequate and updated
Code is correct and working
Links are correct
Make sure you enter the help email link in your manifest.json
Please make sure WMS URLs are updated as needed after your PR is approved

Checklist - Refer to the QA document for the complete list
Please confirm that the following is completed before submitting your PR

[x] All filenames are lower case (including folders, images, files, etc.)
[x] Filenames are descriptive
[x] Your workshop folder structure should be similar to the one used in the sample workshop (https://github.com/oracle-livelabs/common/tree/main/sample-livelabs-templates/sample-workshop)
[x] Are you using multiple versions (desktop/, sandbox/, tenancy/)? Make sure that each of them contains a manifest.json and an index.html
[x] Image references in markdown contain an alternate text

Hi Anoosha,
3. is where I don’t know how to revert the changes. I will need your help with this. Thanks much.
--
Vatsal Gaonkar
PwC | Director
Mobile: +1<PHONE_NUMBER>
Email<EMAIL_ADDRESS>PricewaterhouseCoopers Advisory Services LLC
pwc.comhttp://pwc.com/
Upcoming Leave:
Apr 21st
May 26th – Jun 9th
From: Anoosha Pilli @.>
Sent: Friday, March 31, 2023 5:29 PM
To: oracle-livelabs/partner-solutions @.>
Cc: Vatsal Gaonkar (US) @.>; Mention @.>
Subject: Re: [oracle-livelabs/partner-solutions] 033123_501pmEST (PR #45)
@anooshapilli commented on this pull request.
@vatsalgaonkarhttps://github.com/vatsalgaonkar - Please make the requested changes to the workshop. I will be able to approve the PR once the bot says verified.

We recommend hosting files in object storage. You can upload it to your object storage if you have one or email us the files at<EMAIL_ADDRESS>I will create Pre Autneticated Links for the files and share them with you. You can update the lab with links to download the files.
Please delete all the files in optimizeconfig folder
In introduction lab, could you add your organization logo and your details like in this image

[image]https://user-images.githubusercontent.com/63126232/229234318-8b3f0f37-e080-4055-94b6-cbeb71074bba.png

Please undo the changes in sample-workshop folder
move the introduction folder into the lowercase freeformseries1 folder and delete the other one

[image]https://user-images.githubusercontent.com/63126232/229234526-fce09aee-3caf-4592-9202-04f29d550b55.png

In freeformseries1/createfromonprem/createfromonprem.mdhttps://github.com/oracle-livelabs/partner-solutions/pull/45#discussion_r1154900609:

@@ -0,0 +1,62 @@

+# Create FreeForm application using an Oracle Essbase Outline

+## Introduction

+One of the main use cases for FreeForm application is the ease with which an Essbase outline can be used to build FreeForm application in EPM Cloud.

  ![Image alt text](images/usecasesummary.png)

+In this lab, we will use an existing Essbase outline for Aggregate Storage Option (ASO) and create a FreeForm application from it.

+Estimated Lab Time: 7 minutes

+### About
Add more details About ..?

In freeformseries1/createfromonprem/createfromonprem.mdhttps://github.com/oracle-livelabs/partner-solutions/pull/45#discussion_r1154904726:

+This lab assumes you have:
+* Access to an Essbase on-premises outline file
+* An Oracle EPM Enterprise Cloud subscription
+* Service administrator rights to the instance where you are going to create the FreeForm application

+## Task 1: Creation Process

+1. Hit Start under Create a new application.

  ![Image alt text](images/selectstartonprem.png)

+2. Populate Name and Description for the FreeForm application being created.

Add alternate text to all the images. For example, in this case, you can add the alternate text as Name Description for namesdescription.png

In freeformseries1/createfromscratch/createfromscratch.mdhttps://github.com/oracle-livelabs/partner-solutions/pull/45#discussion_r1154921803:

@@ -0,0 +1,69 @@

+# Create FreeForm application using the Application Creation Wizard (from Scratch)

+## Introduction

+You can also use the Application Creation Wizard in Oracle EPM Cloud to create FreeForm applications. This lab will walk you through the steps of creating a FreeForm application with multiple plan types or cubes. For more information check Managing cubes

+Estimated Lab Time: 8 minutes

+### About
Add text after About like About Application Creation Wizard
—
Reply to this email directly, view it on GitHubhttps://github.com/oracle-livelabs/partner-solutions/pull/45#pullrequestreview-1367614858, or unsubscribehttps://github.com/notifications/unsubscribe-auth/A6K326X6QJJMOARMRQ4GGLDW65EC3ANCNFSM6AAAAAAWPD4WZQ.
You are receiving this because you were mentioned.Message ID<EMAIL_ADDRESS>
The information transmitted, including any attachments, is intended only for the person or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of, or taking of any action in reliance upon, this information by persons or entities other than the intended recipient is prohibited, and all liability arising therefrom is disclaimed. If you received this in error, please contact the sender and delete the material from any computer.
In the event the content of this email includes Tax advice, the content of this email is limited to the matters specifically addressed herein and is not intended to address other potential tax consequences or the potential application of tax penalties to this or any other matter.
PricewaterhouseCoopers LLP is a Delaware limited liability partnership. This communication may come from PricewaterhouseCoopers LLP or one of its subsidiaries.

Hi Anoosha,
I made the suggested changes and pushed again. Can you please check and if all is good can you please send me a private link.
Best,
--
Vatsal Gaonkar
PwC | Director
Mobile: +1<PHONE_NUMBER>
Email<EMAIL_ADDRESS>PricewaterhouseCoopers Advisory Services LLC
pwc.comhttp://pwc.com/
Upcoming Leave:
Apr 21st
May 26th – Jun 9th
From: Anoosha Pilli @.>
Sent: Friday, March 31, 2023 5:29 PM
To: oracle-livelabs/partner-solutions @.>
Cc: Vatsal Gaonkar (US) @.>; Mention @.>
Subject: Re: [oracle-livelabs/partner-solutions] 033123_501pmEST (PR #45)
@anooshapilli commented on this pull request.
@vatsalgaonkarhttps://github.com/vatsalgaonkar - Please make the requested changes to the workshop. I will be able to approve the PR once the bot says verified.

We recommend hosting files in object storage. You can upload it to your object storage if you have one or email us the files at<EMAIL_ADDRESS>I will create Pre Autneticated Links for the files and share them with you. You can update the lab with links to download the files.
Please delete all the files in optimizeconfig folder
In introduction lab, could you add your organization logo and your details like in this image

[image]https://user-images.githubusercontent.com/63126232/229234318-8b3f0f37-e080-4055-94b6-cbeb71074bba.png

Please undo the changes in sample-workshop folder
move the introduction folder into the lowercase freeformseries1 folder and delete the other one

[image]https://user-images.githubusercontent.com/63126232/229234526-fce09aee-3caf-4592-9202-04f29d550b55.png

In freeformseries1/createfromonprem/createfromonprem.mdhttps://github.com/oracle-livelabs/partner-solutions/pull/45#discussion_r1154900609:

@@ -0,0 +1,62 @@

+# Create FreeForm application using an Oracle Essbase Outline

+## Introduction

+One of the main use cases for FreeForm application is the ease with which an Essbase outline can be used to build FreeForm application in EPM Cloud.

  ![Image alt text](images/usecasesummary.png)

+In this lab, we will use an existing Essbase outline for Aggregate Storage Option (ASO) and create a FreeForm application from it.

+Estimated Lab Time: 7 minutes

+### About
Add more details About ..?

In freeformseries1/createfromonprem/createfromonprem.mdhttps://github.com/oracle-livelabs/partner-solutions/pull/45#discussion_r1154904726:

+This lab assumes you have:
+* Access to an Essbase on-premises outline file
+* An Oracle EPM Enterprise Cloud subscription
+* Service administrator rights to the instance where you are going to create the FreeForm application

+## Task 1: Creation Process

+1. Hit Start under Create a new application.

  ![Image alt text](images/selectstartonprem.png)

+2. Populate Name and Description for the FreeForm application being created.

Add alternate text to all the images. For example, in this case, you can add the alternate text as Name Description for namesdescription.png

In freeformseries1/createfromscratch/createfromscratch.mdhttps://github.com/oracle-livelabs/partner-solutions/pull/45#discussion_r1154921803:

@@ -0,0 +1,69 @@

+# Create FreeForm application using the Application Creation Wizard (from Scratch)

+## Introduction

+You can also use the Application Creation Wizard in Oracle EPM Cloud to create FreeForm applications. This lab will walk you through the steps of creating a FreeForm application with multiple plan types or cubes. For more information check Managing cubes

+Estimated Lab Time: 8 minutes

+### About
Add text after About like About Application Creation Wizard
—
Reply to this email directly, view it on GitHubhttps://github.com/oracle-livelabs/partner-solutions/pull/45#pullrequestreview-1367614858, or unsubscribehttps://github.com/notifications/unsubscribe-auth/A6K326X6QJJMOARMRQ4GGLDW65EC3ANCNFSM6AAAAAAWPD4WZQ.
You are receiving this because you were mentioned.Message ID<EMAIL_ADDRESS>
The information transmitted, including any attachments, is intended only for the person or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of, or taking of any action in reliance upon, this information by persons or entities other than the intended recipient is prohibited, and all liability arising therefrom is disclaimed. If you received this in error, please contact the sender and delete the material from any computer.
In the event the content of this email includes Tax advice, the content of this email is limited to the matters specifically addressed herein and is not intended to address other potential tax consequences or the potential application of tax penalties to this or any other matter.
PricewaterhouseCoopers LLP is a Delaware limited liability partnership. This communication may come from PricewaterhouseCoopers LLP or one of its subsidiaries.