HTTPS Connection

When trying to enter the server address using HTTPS, the device correctly sends the packet but does not look to complete the SSL handshake.
A packet capture shows that HTTPS traffic is going out.
The only error message on the app is 'Connection Failed'.
Webserver error log:
time="2022-09-18T23:20:32Z" level=debug msg="http: TLS handshake error from X.X.X.X:47554: EOF"
time="2022-09-18T23:20:33Z" level=debug msg="http: TLS handshake error from X.X.X.X:47556: EOF"
time="2022-09-18T23:20:35Z" level=debug msg="http: TLS handshake error from X.X.X.X:47558: EOF"
time="2022-09-18T23:20:37Z" level=debug msg="http: TLS handshake error from X.X.X.X:47548: EOF"
Browsing using the phone's Chrome browser works fine (no errors). The site uses a custom CA that is trusted by the phone.

To be honest, I don't have any experience with a custom CA trusted by the phone. Does that occur with, let's say, a Let's Encrypt certificate?

I've got the same issue, I wanted to use https on miniflux to use it as a pwa on android, but this broke miniflutt.
I can confirm this works with "real" CAs though.

Any update to this one? Looks like it works with a bundled CA but not a custom added to the Android system.
It maybe possible to add a flag to trust 3rd party CA, or load custom ones into app?

I'm experiencing the same issue, using Nginx as a reverse proxy with a Let's Encrypt certificate.

@ballj @reyqn Could you please try this build: https://github.com/DocMarty84/miniflutt/pull/40#issuecomment-2094252283 ?
@olmokramer If you are using Nginx as a reverse proxy with a Let's Encrypt certificate, then something must be incorrect in your configuration since it should work (I have the same kind of config).

@DocMarty84 thanks for replying. It's working now but I don't remember if I actually needed to fix anything or what that fix would've been.

@DocMarty84, tried today, showing as build 1.11.0 when installing from APK.
No luck at the moment. Could you confirm if it should show 1.11.0? (want to make sure it got installed correctly from the dev build)
You you should be able to create a test setup using the following steps (for testing only - dont use in any production):

Create a custom CA:

openssl genrsa -out ca.key 4096
openssl req -x509 -new -nodes -key ca.key -sha256 -days 1826 -out ca.crt -subj '/CN=MyOrg Root CA'

Create CSR for the webserver (change DNS to match correct domain):

openssl req -new -nodes -out server.csr -newkey rsa:4096 -keyout server.key -subj '/CN=miniflut.example.com' -addext 'subjectAltName = DNS:miniflut.example.com' -addext 'extendedKeyUsage = critical, serverAuth' --addext 'keyUsage = critical, digitalSignature, keyEncipherment'

Sign CSR with CA:

openssl x509 -req -in server.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out server.crt -days 90 -sha256 -extensions v3_req -copy_extensions copy

Load the CA into the android trust store
Will differ per device, but should be able to transfer ca and then open it with the file manager. This will prompt android to load it into trust store.

On the the webserver:
Add server.crt and server.key onto the webserver.
On miniflux, set the following vars:
CERT_FILE=/path/to/server.crt
KEY_FILE=/path/to/server.key

Test from a browser on android - Chrome for example (I think Firefox on android, the setting for custom certs needs to be enabled in advanced options)
Test from miniflutt application


Indicate that match is part of tournament

Currently we can only indicate that match is part of league but can't check if match is part of tournament. I think that it will be a good idea to indicate that match is part of main event.
I checked dotabaff epicenter xl for alchemist and odota. We have one match in advance. Which is of course part of league. But I want somehow to filter only by tournament played matches.

You could use the date filter to filter those matches.

Unfortunately I don't think there's an API that provides the start dates of the tournaments


Kubernetes 1.6 Updates for ZooKeeper

Removes alpha annotations for affinity and storage class. These are replaced with beta fields.
Removes configuration map. This causes conflicts when helm delete is
used charts that depend on zookeeper as a client. Also, in Kubernetes
1.7, it will be possible to perform rolling configuration updates on
StatefulSets that embed configuration in the manifest.
Adds a service for clients to detect a running ZooKeeper instance. This
is useful for dependent charts and client applications to connect their
ZooKeeper clients directly to any running instance of the ensemble.
Increments Chart version to 0.3.0.
Updates connection notes to include connection information in for the
client service.

\assign @foxish

/assign @foxish

/assign @viglesiasce

This will not pass tests until we run them against 1.6

Just tried the chart. Could be a helm issue though, I have not checked. I can't get helm delete to work well. Did you have luck with that?

@k8s-bot e2e test this


Visualizing Grounding Dino Model Predicted Bounding Box in Voxel51 Tool ( https://voxel51.com/). Bounding Box position is changing

Hi Team,
Thanks for your help.
        boxes, logits, phrases = predict(
                model=model,
                image=image,
                caption=TEXT_PROMPT,
                box_threshold=BOX_TRESHOLD,
                text_threshold=TEXT_TRESHOLD
        )

  My assumption is boxes contains the [nq,4] entries. CenterX, CenterY, W, H in the normalized one in the form of values 0 to 1.

  import fiftyone as fo
  detections = []

  for box, score, label in zip(boxes, scores, phrases):
        box = [round(i, 2) for i in box.tolist()]
        detections.append(
                        fo.Detection(
                            label=label,
                            bounding_box=box,
                            confidence=score
                        )
            )
  # Save predictions to dataset
  sample["gdino_pred"] = fo.Detections(detections=detections)
  sample.save()

In the voxel51 tool when i see the output there is a change in the position.
attached the sample image as well
what is the reason and how to change this problem?
for OWL-ViT model output we could visualize it well.
only i have problem with Grounding Dino model output.
I used BDD100k image data as input for this ( 1280x720 RGB image)
waiting for your response.

Screenshot attached


[FEATURE] Add contributing guidelines

Detailed description
Add detailed contributing guidelines to the repository. You can
take a reference from the web3community.github.io repository. 🙂
Context
This is useful when first-timers want to contribute to our project or anyone who wants to.
Possible implementation
I don't think this applies here.
Additional information
Please don't just copy-paste the contributing.md file. Try to adjust it according to what this repository is about. 🙂
Code of Conduct

[X] I agree to follow this project's Code of Conduct

Can I work on this?

I think we should better let others work on this. If no one works on this and a week passes, you can work on it. Let's see what the other maintainers think, though. @mkubdev, @vinzvinci, @shuklaritvik06.

Hi @Panquesito7, Can I work on this?

Feel free @inomag


HPO negative tests failures on Openshift

Post experiment tests failed, due to log messages not in service.log
Failed cases are :
empty-id
null-id
empty-name
no-name
null-name
no-operation
additional-field
generate-subsequent
invalid-searchspace
post_duplicate_experiments

Similar issues seen with post results or get trial json config tests too

Also the deploy script displays "Access server at http://localhost:8085" for openshift & minikube hpo deployments too.


Add more Php constants

Hey folks,
Thanks so much for creating this plugin. I'm currently using it for a client project at the moment and I was wondering if you'd be open to me adding a Pull Request that add some optional Php constants for the following settings:

IdP Entity Id
Single Sign On Service Url
Single Log Out Service Url
X.509 Certificate

If those constants are defined then those settings would be automatically added and I'd also change those fields to read only and have a message saying that those constants have been defined. This would enable developers to keep those constants in version control and not have to set them up manually across multiple environments.
Let me know what you think of the idea. Thanks!

Those values are part of the plugin settings and stored on the database so I don't understand why you want to create constants...
If you want to use always the same value..define them on the settings.php file so you will be able to have them on a version control... but this is a custom solution, I don't think that is the common behavior that most of the users of the plugin need.

Hi @pitbulk, I'd love to see something like this. Although I guess it's not common behaviour, it definitely seems like a progressive way forward (especially for those of us using Bedrock).
Having business critical credentials untracked in a db, with no audit trail feels like risky biscuits.

But you only store on database saml options and idp metadata (public info). You dont store any credentials...and as I said you can ignore the settings on database and use directly values from the settings.php file.

Hi @pitbulk, do you mean that edit onelogin's own settings.php?
If so, we would really prefer not to have to do that.
We manage multiple environments (e.g. dev, staging and production), each with their own settings for SSO. If we re-sync the DB, then we have to update the onelogin SSO settings each time. This is very tedious.
Being able to set these programatically allows us to pull in the settings from environment variables and protected stores.
We also would be more than happy to provide a PR.

The settings.php file is at the end an array... you can modify it anytime before inject it in the Auth or Settings object.

Hi @pitbulk, again, do mean that we would need to edit your plugin's settings.php?

You can just edit settings.php and add another require "custom_settings.php" at the bottom of the file and put there the code that you need to override the settings.
Or override the initialize_saml method to use directly a custom_settings.php,

@pitbulk, are you really suggesting that we fork and edit your plugin or override one of your internal functions as the only way forward?
What happens when you update your plugin, let alone refactor it?

Add 1 line to the settings.php:
require "<desired_path>/custom_settings.php";

vs
Create 4 php constants (can be more later)  that implies security issues for the rest of the customers of the plugin (because any other plugin can override those constants and compromise the SAML integration).

Add 1 line to the settings.php

And end up with a forked plugin, introducing many issues.

Create 4 php constants (can be more later) that implies security issues for the rest of the customers of the plugin (because any other plugin can override those constants and compromise the SAML integration).

But any plugin can do that it now anyway via the WordPress options calls, just as this plugin does. Using constants over options is desired to reduce overheads of setting options all the time, which require DB calls. In fact, security is better with constants in the case where the DB is compromised. They also allow for devs to add encryption at rest if so desired.

Ok I'm open to merge a PR that adds PHP constants for IdP data, and create a setting on the "advanced settings section" to enable it use (by default disabled so PHP constants will be ignored.
Is everybody ok with that solution? anyone can contribute that PR?

Could it be like 10up's ElasticPress and Delicious Brains' Amazon Web Services plugins, which just take the constants if supplied?
e.g. No constants:

e.g. With constants:

Having a "valid" SAMLResponse means that you can log in the app with the user info provided... control the IdP Metadata registered on the SAML settings is like control the validation process.
If any malicious plugin defines those IdP settings constants, we are giving admin access to our Wordpress instance. That why I want to set a setting to enable that functionality that you requires, because maybe makes sense for your test scenario... but I want to keep rest of the production instances safe.

Fair enough :) All of out sites would have the toggle switched on and then the data would be set programatically, right? Thanks again!

I'm assuming this is still open? I'm seeing if there is a way to inject iDp things via environment variables for non production environments using this plugin..

I would also like to be able to load variables from ENV.


If possible return information about resource requirements as well in the new containerizer framework

Is your feature request related to a problem? Please describe.
Since the containerizer can return some information about the app in json format,
we can also return information about resource requirements (max or min memory and cpu).
Additional context
In some apps the developers have explicitly specified the resource requirements:
https://alvinalexander.com/blog/post/java/java-xmx-xms-memory-heap-size-control/
java -Xmx64m -classpath ".:${THE_CLASSPATH}" ${PROGRAM_NAME}

With the new framework any information required can be returned by the Transformers and can be used as long as the IR/apireaource or the template supports it. So this will be handled when a source exposes this data.


Fetch results from DB and save to local storage

This PR adds a new method to fetch the results data from the DB and converts it into ExperimentResultData object which is then passed to addResultsToLocalStorage() method in ExperimentInterfaceImpl
Note: This PR contains changes on top of PR #755

LGTM


Improve usability of generate scripts

Before the generate_data and generate_queries scripts would leave
behind broken gzip files if the underlying command failed. This
then required the user to remove the file before trying again,
otherwise the script would just detect the old (broken) file and skip
the step. This commit adds a 'trap' to cleanup any files when an
error occurs in generation.

Codecov Report

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

@@           Coverage Diff           @@
##           master      #52   +/-   ##
=======================================
  Coverage   53.55%   53.55%
=======================================
  Files          66       66
  Lines        3189     3189
=======================================
  Hits         1708     1708
  Misses       1469     1469
  Partials       12       12

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 4e997a9...6d98c1e. Read the comment docs.


pagespeed adds css link within body - without property attribute. This is invalid in html 5

My site is http://hobbyistsoftware.com
the offending line is:
<noscript class="psa_add_styles"><link rel="stylesheet" type="text/css"    href="/styles/A.styles.css.pagespeed.cf.SOLdUOwJkx.css">

which generates a validation error:
Error: Element link is missing required attribute property.

according to this page:
https://stackoverflow.com/questions/18549726/element-link-is-missing-required-attribute-property
this can be fixed with
property='stylesheet'

My reading of the spec is that a link that includes an external stylesheet has to be in the head, whether or not you add property='stylesheet'.  For the prioritizie_critical_css filter to work properly, the external stylesheet needs to be loaded at the end of body.  This isn't to spec, but it works in all browsers we've tested and there's not a spec-compliant way of doing this.
Adding property='stylesheet' would make the validator be quiet for now, but not actually improve anything or make us more complaint.

I haven't read the spec - so speak with little authority. However, the answer in the linked stack overflow answer by sideshowbarker seems credible.
also - there is a degree to which the standard validator becomes the de-facto spec...

In general we have not focused much on these mechanical validators for
various reasons. We do, however, have a 'pedantic' filter:
https://developers.google.com/speed/pagespeed/module/filter-pedantic which
is designed to avoid adding html4 validation errors.  Based on the doc it
does not cover html5 though.
We could consider this an enhancement request for the 'pedantic' filter,
but as generally this transformation makes HTML bigger, we haven't spent
much time on it recently.
On Tue, Jul 14, 2015 at 5:48 PM, ConfusedVorlon<EMAIL_ADDRESS>wrote:

I haven't read the spec - so speak with little authority. However, the
answer in the linked stack overflow answer by sideshowbarker seems credible.
also - there is a degree to which the standard validator becomes the
de-facto spec...
—
Reply to this email directly or view it on GitHub
https://github.com/pagespeed/ngx_pagespeed/issues/990#issuecomment-121401743
.

Agree that property='stylesheet' belongs in the pedantic filter.

@jmaessen Only if property='stylesheet' makes it spec compliant, which last time I read the spec I thought it didn't.
(But, yes, if we do add it I think it goes in pedantic or a new pedantic5 filter and not in our main flow, since it's adding bytes just to appease a validator.)


Image of wires of poject

Hi Rousir,
I would like use your the project to develop some functions, to use Grandstream UCM62xx and Asterisk  FreePBX
Please, could you upload a image of mic and DAC wires from ESP32 board?
Thanks

ok, added，https://github.com/rousir/ArduinoVoip/commit/b1b6a855f1bdd2b117ba0ac88eed8bcf09ccea60

Thanks, keep in touch


Split out FilenameProvider, rename DirectoryProvider to PathProvider

Creating this as a draft PR first to get some feedback before I apply fixes to the filewriters to account for this change.
Addresses #214

Before I continue, I'd like to hear if you have any suggestions.

I'll review once rebased :)

@mrakitin @danielballan @coretl I think this is ready for review and potentially merge

I have some fixes from yesterday's and today's work at HEX in https://github.com/jwlodek/ophyd-async/pull/1. Please merge, then we can rebase.

A comment https://github.com/bluesky/ophyd-async/pull/245#pullrequestreview-2173340570 was intended to be a part of my review. Sorry for posting it separately.

I think all HDFWriting should be being done with the unified HDFFile now?
https://github.com/bluesky/ophyd-async/blob/main/src/ophyd_async/epics/areadetector/writers/general_hdffile.py


CI: Push package to PyPI on release

We should solve #7 first, of course.
Once this is ready, we can set up CI to release this via GitHub releases. That's a very convenient way to do releases.

python-discord/olli has a Docker & PyPI workflow that publishes a :main and :<sha> tag for every main push as well as a :<semver> (e.g. :0.0.1) and :latest tag on every release.
It also has environments and deploy approvals.
Workflow file: https://github.com/python-discord/olli/blob/main/.github/workflows/release.yml
In action: https://github.com/python-discord/olli/actions/runs/712545628

We're not going to proceed with packaging Quackstack at this point. Integrations such as Sir Lancebot and potentially a CLI in future will call out to the publicly hosted instance at quackstack.pythondiscord.com.


Should CiceroMark allow tables?

Table are often found in contracts. Although they are not natively supported in CommonMark, it would be nice to have a way to create tables in AccordProject templates/contracts.
{{#table products}}
  {{#cell "Name"}}{{name}}{{/cell}}
  {{#cell "Code"}}{{id}}{{/cell}}
{{/table}}

Those are rendered as markdown. From:
{ products: [
    { name: "Sponge", id: 1312 },
    { name: "Bleach", id: 341 }
  ] }

to
| Name | Code |
|---|---|
| "Sponge" | 1312 |
| "Bleach" | 341 |

This issue is inherited from #392


Confirm release of new versions to pypi

v0.0.1 released to pypi this morning.
https://pypi.org/manage/project/superphot-plus/releases/
I'll add other folks to ownership shortly.


Spawning in "shipyard" dimension when disassemble ship with bed

If i set spawning point on the assembled ship using bed,then if i dissasemble ship and die, i will respawn in other dimension

Lol

Lol


Updating QuickStart templates to WS2016

@sumantshiv,
Thanks for your contribution as a Microsoft full-time employee or intern. You do not need to sign a CLA.
Thanks,
Microsoft Pull Request Bot


(feature): Allow control of invalid-tooltip position

Form validation tooltip displays to the bottom of input.
It would be nice to have the ability to show it to the right (and probably to the left and top as well), since currently it might overlay other inputs making it difficult to an user to see what's typed in other form inputs.

@Johann-S , thank you! This is certainly an option! I just thought that having the ability to control the placement of invalid-tooltip might be an useful feature for your team to consider.

For now, no plans to add the directional control. Should be straightforward to override though—you'll only need to tackle the positioning properties with a selector like .valid-tooltip, .invalid-toolip { ... }.


Ngerreklel

In Ymesei Ezekiel's last song he composed (1984), Cheltel a Chelebacheb, he uses the line "Leke  domdid a chelechol / me aikel bek el ngerreklel / a chelebacheb el lungil cheltel."  Yoichi Rengiil and Felix Okabe said that "ngerreklel" means the "curves" of the rock islands.  What is the root noun of this word?

Actually it’s ‘mereklel’ a chelebacheb. Derived from urrukel, hidden
places, unseen, unexplored.
On Thu, Jul 25, 2024 at 11:20 JimGeselbracht @.***>
wrote:

In Ymesei Ezekiel's last song he composed (1984), Cheltel a Chelebacheb,
he uses the line "Leke domdid a chelechol / me aikel bek el ngerreklel / a
chelebacheb el lungil cheltel." Yoichi Rengiil and Felix Okabe said that
"ngerreklel" means the "curves" of the rock islands. What is the root noun
of this word?
—
Reply to this email directly, view it on GitHub
https://github.com/tekinged/missing/issues/509, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AF2DJJAMQ2V7VCRZSFU2TYTZOE6XTAVCNFSM6AAAAABLPCKVVKVHI2DSMVQWIX3LMV43ASLTON2WKOZSGQZTANZRG43DONI
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>


Fixed calculation of VoiceChannel count

Since categories were introduced, the number of voice channels was too large as it also contained the number of categories. (by Anheledir#6792)

Makes sense, thanks a lot!


Update README.rst

Based on your work, I've derived support for communicating with micropython on a NodeMcu over a serial line. It's basically just changing the USB VID and PID to make it work and updating all names to reflect the different board. It's fun to see that the NodeMcu behaves exactly like the BBC micro:bit.
Find the nodemcu_kernel here: https://github.com/jneines/nodemcu_kernel/
When updating all corresponding files i've gotten aware of a trivial typo in your Readme file, which i've fixed along with this pull request.
Fixed item numbering in the Readme file

Thanks! And I'm very happy to see that it's easy to adapt for another board. :-) Please do make a PR to link to it in the README. And maybe we should think about ways to share code between them.

Hi Thomas.
Thanks for the offer. I’ll probably be able to do that at the weekend. How do you think about sharing code. Would you think merging the two to a more generic one is the way to go? Or dynamically defining the kernel descriptions on the fly? Would that be possible at all?
Jens

On 23 Jan 2017, at 23:10, Thomas Kluyver<EMAIL_ADDRESS>wrote:
Thanks! And I'm very happy to see that it's easy to adapt for another board. :-) Please do make a PR to link to it in the README. And maybe we should think about ways to share code between them.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub https://github.com/takluyver/ubit_kernel/pull/2#issuecomment-274633793, or mute the thread https://github.com/notifications/unsubscribe-auth/ATler5r4bQlNcL8REx9sBGgojttlY8Wwks5rVSVUgaJpZM4Lqact.

I thought of a couple of possible options:

If the code really is exactly the same, and especially if it's likely to be the same for other boards running micropython, we could have one micropython kernel which talks to the first compatible board it finds - i.e. it would have a set of (VID, PID) tuples, and find a device matching any of them.

If there are some differences in the kernel code to talk to different boards, they could instead rely on a separate package containing common bits of code which are useful to each, but still exist appear as separate kernels.

Interesting thought about defining kernel descriptions on the fly. I imagine it's possible to listen to events of USB devices being plugged and unplugged, and write/delete kernelspec files when the boards are connected. I imagine that how you do that differs on each platform, though, and I only have a vague idea how to do it on Linux.


custom predefined range buttons

@BhavinPatel04 Is there any option through which I can make my own custom buttons?
Like in the attached screen it is last 7 days, last 30 days, last 90 days,
instead, I want buttons like last 6 hours, Last 24 hours, today and tomorrow.

@jamalmehmood Yes, you can. Use availableRanges properties in settings.
https://github.com/BhavinPatel04/ngx-datetime-range-picker#settings


Clone Detection Evaluator

I have added the evaluator script for the clone detector task. The README should be updated to contain information on what the input and output is and how to run it.
Original: https://github.com/microsoft/CodeXGLUE/tree/main/Code-Code/Clone-detection-BigCloneBench/evaluator

Hi @kritipat ,
Thank you for your contribution!
For the input and output section of your readme, I think the format is incorrect. It seems to me that the format for answers should be like this file here. The predictions file would be similar. I could very well be missing something though.
I also see that you added the How To Test section but we are also requiring that you add a test file. You will find a starter file for the testing script in the test folder under your task. The script will test that the output of the evaluator is correct. You can find an example here. This script will use the answers and predictions files from the CodeXGLUE repository.
If you have any questions please let me know.

Thank you for the feedback. I have updated the README and added appropriate files to for the tasks and test folder. Could you please review?

Hey @kritipat,
I tried to run your script but you reference "expected.txt" and I do not see that file in your changes. Also you use a variable called total_lines that I do not see defined anywhere.
You do not need to calculate the number of correct lines. The evaluation script you added earlier should print the accuracy and the test script you are writing is checking that the output is correct. You can find the expected output in the readme of your task in the CodeXGLUE repo.


Installation under Windows

Hey,
I had do install Napari.jl under windows.
But even after trying both installation methods, the following error occurs:
julia> @view_image img
ERROR: PyError ($(Expr(:escape, :(ccall(#= C:\Users\Felix\.julia\packages\PyCall\BD546\src\pyfncall.jl:43 =# @pysym(:PyObject_Call), PyPtr, (PyPtr, PyPtr, PyPtr), o, pyargsptr, kw))))) <class 'qtpy.PythonQtError'>
PythonQtError('No Qt bindings could be found.\n\nnapari requires either PyQt5 or PySide2 to be installed in the environment.\nTo install the default backend (currently PyQt5), run "pip install napari[all]" \nYou may also use "pip install napari[pyside2]"for Pyside2, or "pip install napari[pyqt5]" for PyQt5')
  File "C:\Users\Felix\.julia\conda\3\lib\site-packages\napari\view_layers.py", line 134, in view_image
    return _make_viewer_then('add_image', args, kwargs)
  File "C:\Users\Felix\.julia\conda\3\lib\site-packages\napari\view_layers.py", line 115, in _make_viewer_then
    viewer = Viewer(**vkwargs)
  File "C:\Users\Felix\.julia\conda\3\lib\site-packages\napari\viewer.py", line 50, in __init__
    from .window import Window
  File "C:\Users\Felix\.julia\conda\3\lib\site-packages\napari\window.py", line 14, in <module>
    from ._qt import Window
  File "C:\Users\Felix\.julia\conda\3\lib\site-packages\napari\_qt\__init__.py", line 13, in <module>
    raise type(e)(

Stacktrace:
 [1] pyerr_check
   @ C:\Users\Felix\.julia\packages\PyCall\BD546\src\exception.jl:62 [inlined]
 [2] pyerr_check
   @ C:\Users\Felix\.julia\packages\PyCall\BD546\src\exception.jl:66 [inlined]
 [3] _handle_error(msg::String)
   @ PyCall C:\Users\Felix\.julia\packages\PyCall\BD546\src\exception.jl:83

Any idea what's going wrong (very unexperience windows user here :D)?

I would open up the "Anaconda Powershell Prompt" and install either PyQt5 or PySide2. See https://github.com/napari/napari for specific instructions. They mention this exact error. I recommend PyQt5.

Didn't even know that I had installed it 😮
Is that installed with PyCall or something?
But thanks, now it works!

It is installed with conda, which in installed by Conda.jl, which is a dependency of PyCall.jl.
In retrospect, I guess "] add Conda" followed by "using Conda; Conda.add("PyQt5")" would have worked too.


Added Typecast kwarg for post and update methods

The following methods can now take the typecast kwarg which will allow new options to be added to Single and Multiple Select Fields.

await table.post_record(record, typecast=True)
await table.post_records(records, typecast=True)
await table.update_record(record, typecast=True)
await table.update_records(records, typecast=True)

The following methods can now take the typecast kwarg which will allow new options to be added to Single and Multiple Select Fields.

await table.post_record(record, typecast=True)
await table.post_records(records, typecast=True)
await table.update_record(record, typecast=True)
await table.update_records(records, typecast=True)


baetyl-1841: Add namespace when gen put object url

Codecov Report

Merging #457 (8d5c6f1) into master (35851eb) will not change coverage.
The diff coverage is 0.00%.

@@           Coverage Diff           @@
##           master     #457   +/-   ##
=======================================
  Coverage   63.51%   63.51%
=======================================
  Files          91       91
  Lines        6928     6928
=======================================
  Hits         4400     4400
  Misses       1887     1887
  Partials      641      641

Impacted Files
Coverage Δ

plugin/awss3/awss3.go
6.82% <0.00%> (ø)

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 35851eb...8d5c6f1. Read the comment docs.


replicating table 1

Thanks for your interesting work, will you release the code for replicating all of the robustness result in Table 1 of your paper, including 9 attacks?

is it only workable on windows? btw,  it will encounters error when i am trying to running on windows

Hi, you can replicate the additional results on HarmBench using their official repo here: https://github.com/centerforaisafety/HarmBench


Refactoring the ChessBoardState

Problematic
At this time, the ChessBoardState is too specific to the 2D board (aka contains methods used to move pieces). This means that cannot be used by the 3D board
Description
This PR is the 1st part of #239 and his goal is to extract common information. The new AR using the new state will be done in a separate PR.
TODO

Update the documentation

Current Problems
We have a new file that regroup the rank resources. We cannot use enumeration like the previous code, because we cannot enforce the list of resources need to display a chess game

I don't think using generic Rank and Color types will is the right approach, since it won't let us reuse the implementation of the ChessBoardState across both the classic and AR modes if the ranks and color union types are not shared. Instead, I think we should proceed as follows :

Extract the contentDescription, whiteIcon and blackIcon properties from Rank and move them to a dedicated function with a when clause, called from the ChessBoard composable.
Extract the contentDescription property from Color and move it to a dedicated function with a when clause, called from the ChessBoard composable.
Create a MoveableChessBoardState interface which extends ChessBoardState and defines the "moveable" aspects of the board. Update the ChessBoard composable signature to use a MoveableChessBoardState.

The final interfaces would look similar to this :
@Stable
interface ChessBoardState<out Piece : ChessBoardState.Piece> {

  enum class Rank {
    King,
    Queen,
    Rook,
    Bishop,
    Knight,
    Pawn,
  }

  enum class Color {
    Black,
    White,
  }

  data class Position(val x: Int, val y: Int)

  @Stable
  interface Piece {
    val rank: Rank
    val color: Color
  }

  val pieces: Map<Position, Piece>
  val checkPosition: Position?
}

@Stable
interface MoveableChessBoardState<Piece : ChessBoardState.Piece> {
  val selectedPosition: ChessBoardState.Position?
  val availableMoves: Set<ChessBoardState.Position>
  fun onDropPiece(piece: Piece, endPosition: ChessBoardState.Position)
  fun onPositionClick(position: ChessBoardState.Position)
}

The ChessBoard composable could then be renamed to ClassicChessBoard, and the AR composable could be renamed to ArChessBoard too for instance.


Integrated e2e framework in drenv

Dump cluster kubconfigs and e2e config.yaml when starting an environment. The config.yaml can be used with the e2e framework to run tests using the environment.
To test integration quickly, a new e2e environment was added.
Example run (using #764):
$ (cd test && drenv start envs/e2e.yaml)
2023-08-01 13:36:04,454 INFO    [e2e] Starting environment
2023-08-01 13:36:04,506 INFO    [dr1] Starting minikube cluster
2023-08-01 13:36:05,534 INFO    [dr2] Starting minikube cluster
2023-08-01 13:36:06,525 INFO    [hub] Starting minikube cluster
2023-08-01 13:36:40,727 INFO    [dr1] Cluster started in 36.22 seconds
2023-08-01 13:36:57,248 INFO    [dr2] Cluster started in 51.71 seconds
2023-08-01 13:37:15,228 INFO    [hub] Cluster started in 68.70 seconds
2023-08-01 13:37:15,228 INFO    [e2e] Dumping ramen e2e config to '/home/nsoffer/.config/drenv/e2e'
2023-08-01 13:37:15,346 INFO    [e2e] Environment started in 70.89 seconds

# There must be a better way...
$ cp ~/.config/drenv/e2e/config.yaml e2e/config/config.yaml

$ go test -v ./e2e
=== RUN   TestMain
=== RUN   TestMain/TestConnectionToCluster
--- PASS: TestMain (0.02s)
    --- PASS: TestMain/TestConnectionToCluster (0.01s)
PASS
ok  	github.com/red-hat-storage/ramen/e2e	0.025s

$ (cd test && drenv delete envs/e2e.yaml)
2023-08-01 13:40:18,575 INFO    [e2e] Deleting environment
2023-08-01 13:40:18,576 INFO    [dr1] Deleting cluster
2023-08-01 13:40:18,577 INFO    [dr2] Deleting cluster
2023-08-01 13:40:18,577 INFO    [hub] Deleting cluster
2023-08-01 13:40:19,833 INFO    [dr1] Cluster deleted in 1.26 seconds
2023-08-01 13:40:19,838 INFO    [hub] Cluster deleted in 1.26 seconds
2023-08-01 13:40:19,839 INFO    [dr2] Cluster deleted in 1.26 seconds
2023-08-01 13:40:19,839 INFO    [e2e] Removing config /home/nsoffer/.config/drenv/e2e
2023-08-01 13:40:19,840 INFO    [e2e] Environment deleted in 1.26 seconds

@nirs Thank you for working on this quickly!


Iris: Preferred Model Setting has no validation

Describe the bug
In the Iris Settings, the preferred model has no validation. This has two problems:

An Iris Subsystem can be enabled, but can still have no preferred model. This causes it to fail with a Nullpointer Exception.
(THIS ONLY HAPPENS IN A NEW SYSTEM WERE A PREFERRED MODEL WAS NEVER SELECTED!)

An Iris Subsystem can have a preferred model, that is no longer part of its allowed models.

To Reproduce
Point 1 (only works if no preferred model was ever selected - so verify with new Iris Settings on a local system)

Go to 'Iris Settings (Admin)'
Enable an Iris Subsystem and select an allowed model (e.g. Competency Generation)
Save the selection - no preferred model is selected
Go to course management -> competencies -> generate competencies
The generation now fails with a NullPointer Exception due to the missing preferred model
Should work the same for every Iris Feature

Point 2:

Go to 'Iris Settings (Admin)'
Enable an Iris Subsystem and select an allowed model
Select the model as preferred aswell
Save the selections
Remove all allowed models and save - The preferred model still stays and works!

Expected behavior
The Iris Settings should be validated (ideally client- and server-side):

If a subsystem is enabled, it should require a preferred model to be selected (or inherited), and at least one allowed model.
The preferred model should be checked that it is part of the allowed models

Screenshots
No response
Which version of Artemis are you seeing the problem on?
6.8.2
What browsers are you seeing the problem on?
Chrome
Additional context
No response
Relevant log output
No response

Closing: Discussed with Iris Team.
The current Pyris Rework will fix this issue by making the option obsolete.
For now these Issues can be circumvented by Admins correctly selecting the preferred model.


INT-B-19226 Revert and redo of form changes

Agility ticket
Relevant INT PRs
#13474
#13548
#13567
Summary
This PR changes customer onboarding and move creation forms in MilMove to label required fields with light grey "Required" text, while getting rid of the existing "Optional" text that currently accompanies optional fields. While this was handled with the other INT PRs, the method used changed behavior across the entire app, which was not in the story scope. Now only forms on the Customer side should be affected.
How to test
Please follow the steps in the relevant INT PRs, but basically, check all customer side onboarding and move forms to check that all form fields that are needed to submit show a "Required" light grey help label, and that no "Optional" labels are left over.

I'm seeing required and optional labels for dimensions in boat shipment form and mobile shipment from. Is this correct?

I'm seeing required and optional labels for dimensions in boat shipment form and mobile shipment from. Is this correct?

Good catch, definitely not, I'm assuming something weird happened with merge conflicts that didn't show up while I had the server running since it wasn't like this in my MAIN branch, will edit real quick with a fix

also not sure if this is related to your changes, but the fields styling got changed for city and state - One is from Main and other is INT. Might be someone else's changes, but maybe you might know:

also not sure if this is related to your changes, but the fields styling got changed for city and state - One is from Main and other is INT. Might be someone else's changes, but maybe you might know:

Yeah this is currently only in INT and is a result of change from Ricky I believe, looks like there's a story that changes it to where the user can just put in their address and the rest auto fills or something like that. From what I can tell that is supposed to be like that, had to refactor a bunch of tests to get them to work with the new UI after changing the optional labels.

I hope you are tracking all the changes with all theses PRs because I can already tell this MAIN PR is gonna be a massive pain.


Improvement: replacing the existing yaml adaptor with go-yaml-v3

Supporting the #182 go-yaml v3 would also help with

Easy translation of achors and references to CUE
Improved positioning
Comments

This holds both for parsing and generating. This would replace internal/third_party/yaml.
This would be a good test:
{
        a: &a ~,
        b: &b [*a,*a,*a,*a,*a,*a,*a,*a,*a],
        c: &c [*b,*b,*b,*b,*b,*b,*b,*b,*b],
        d: &d [*c,*c,*c,*c,*c,*c,*c,*c,*c],
        e: &e [*d,*d,*d,*d,*d,*d,*d,*d,*d],
        f: &f [*e,*e,*e,*e,*e,*e,*e,*e,*e],
        g: &g [*f,*f,*f,*f,*f,*f,*f,*f,*f],
        h: &h [*g,*g,*g,*g,*g,*g,*g,*g,*g],
        i: &i [*h,*h,*h,*h,*h,*h,*h,*h,*h],
    }

See https://github.com/dtolnay/serde-yaml/issues/53.

One acceptance criteria for this change: cue export --out yaml should represent the order of the fields in each data structure the same as cue export. Currently yaml.Marshal reorders them lexically.

This is in cf727960 , I can confirm the sorting is correct now; not sure about the other improvements @vaibhavk was thinking of.

This issue has been migrated to https://github.com/cue-lang/cue/issues/216.
For more details about CUE's migration to a new home, please see https://github.com/cue-lang/cue/issues/1078.


Create ComposeDB-Editor-Zhang-YunHe.md

Closes [https://github.com/SporkDAOOfficial/ETHDenver-2023/issues/162]

Closes [https://github.com/SporkDAOOfficial/ETHDenver-2023/issues/162]

https://github.com/SporkDAOOfficial/ETHDenver-2023/issues/162

Closes  https://github.com/SporkDAOOfficial/ETHDenver-2023/issues/162


DynamicScraper: Support timeout for page loading

During scrapping I encounter couple pages that hangup during loading.
I'm doing scrapping on thousands of pages in parallel, and some of them stuck forever(at least 10+ min).
Timeout will solve this problem, ideally it would have user supplied value, but reasonable hardcode is also good.

That is a really good idea. I'll look into it.


feat: run commands in a ci pipeline

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

Project coverage is 46.87%. Comparing base (ec53a49) to head (a1c9962).

Files
Patch %
Lines

py/atlas_init/cli_helper/tf_runner.py
0.00%
2 Missing :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #10      +/-   ##
==========================================
+ Coverage   46.81%   46.87%   +0.06%
==========================================
  Files          24       24
  Lines        1540     1538       -2
  Branches      259      257       -2
==========================================
  Hits          721      721
+ Misses        799      797       -2
  Partials       20       20

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


Throws exception when entered a TLD

When I try to test a TLD (like "co.uk"), I get an exception. That exception doesn't show any signs of the cause, other than the message string "Domain is a TLD according publicsuffix". I'd like to distinguish between a TLD (or an otherwise too short domain name) being entered, and other technical trouble while downloading the file, parsing the rules etc. The first is a validation error, the second is a more general technical issue. These are presented to the user and logged differently.
How would I do that if not comparing the exception message text? Could you maybe add support to analyse TLDs directly and provide corresponding data in the DomainName class? Like the Domain property being empty.
BTW, the exception text would more correctly be: "Domain is a TLD according to publicsuffix."

I am about to release a new version of the library. There are now fewer exceptions thrown and there is better support for dependency injection.


No webhook is triggered to mattermost

I try to make this integration working without success. I configured gitlab and ran the following command:
mattermost_gitlab http://requestb.in/1bmu9np1

and when a push a commit to the server, I have the following line
153.xxx.xxx.xxx - - [23/Nov/2016 17:31:43] "POST /new_event HTTP/1.1" 200 -

Unfortunatly no webhook is sent to http://requestb.in/1bmu9np1 although no error is displayed.
I will try to investigate it myself but any help is appreciated.

After a little debugging I discovered that I was missing the --push option. A --verbose parameter would be nice to reveal such problems.


Request Support for ILI9486 TFT LCD

Hello,
I recently purchased a touch screen module to go with my Arduino Mega 2560. The demo documentation was easy enough to follow, I uploaded a TFTpaint program demo, the GLUE demo, as well as a mock phone dialer program. My initial hopes were to utilize some drawing utilities in conjunction with the needed touch libraries in order to create a custom GUI for an automation project I am working on. Over the last couple of nights I have been exploring different display driver libraries for the Arduino and it would seem that GUIslice is exceptionally well-designed. However, there is no native support for my LCD. I am quite new to modifying source code and attempting to configure the library file correctly to match my screen has proven to be a challenge.
I will include the sample files for my LCD screen. This will provide information regarding library supports required to drive the display. Also, I will present all library files which I believe are necessary to drive the display, including the required raw GUIslice library files which must be configured accordingly to hardware of my LCD Screen. I will include a photo of the back of the module with the pins and descriptors as well. Lastly, I will provide the modified library files which I have edited to try and interface with the pins of my LCD screen and the GPIOs of my MEGA board.
This is the original raw GUIslice src zip repository. This is used in starting from scratch to configure for my LCD:
GUIslice-master.zip
These are all the modified files and needed libraries to run MY LCD. There is a sketch included that should have all config.h aspects modified as needed to drive my display:
myLCD files and examples.zip
After studying some of the test results of different models and settings provided via an Excel doc located at the bottom of this post, I looked at the source code for the libraries used in driving myLCD examples to find that Adafruit_TFTLCD.h is called to within the driver layer for Adafruit-GFX of GUIslice_drv_adagfx.cpp
as per the following quote:
// Driver Layer for Adafruit-GFX
// =======================================================================

// GUIslice library
#include "GUIslice_drv_adagfx.h"

#include <stdio.h>

#if defined(DRV_DISP_ADAGFX)
  #include <Adafruit_GFX.h>
  #include <gfxfont.h>
#elif defined(DRV_DISP_ADAGFX_AS)
  #include <Adafruit_GFX_AS.h>
#endif

#if defined(DRV_DISP_ADAGFX_ILI9341)
  #include <Adafruit_ILI9341.h>
  #if (GSLC_SD_EN)
    #include <SD.h>   // Include support for SD card access
  #endif
  #include <SPI.h>
#elif defined(DRV_DISP_ADAGFX_ILI9341_8BIT)
  #include <Adafruit_TFTLCD.h>
  #if (GSLC_SD_EN)
...

can this be reconfigured as:
// Driver Layer for Adafruit-GFX
// =======================================================================

// GUIslice library
#include "GUIslice_drv_adagfx.h"

#include <stdio.h>

#if defined(DRV_DISP_ADAGFX)
  #include <Adafruit_GFX.h>
  #include <gfxfont.h>
#elif defined(DRV_DISP_ADAGFX_AS)
  #include <Adafruit_GFX_AS.h>
#endif

#if defined(DRV_DISP_ADAGFX_ILI9341)
  #include <Adafruit_TFTLCD.h>
  #if (GSLC_SD_EN)
    #include <SD.h>   // Include support for SD card access
  #endif
  #include <SPI.h>
#elif defined(DRV_DISP_ADAGFX_ILI9341_8BIT)
  #include <Adafruit_TFTLCD.h>
  #if (GSLC_SD_EN)

and would that allow myLCD to properly accessed by the Arduino?
I know that it can be driven using the Adafruit_TFTLCD.h library. and Adafruit_GFX.h library. --both of which are embedded in GUIslice-- srcTouchScreen.h is also called out in myLCD example code but I do not recall whether it is embedded in GUIslice through reference in GUIslice.h
this is the guide with test results of different screens, boards, and parameters--from GUIslice data files
config guide:
GUIslice_config_guide.xlsx"
Here is the technical datasheets of myLCD:
Technical Data about myLCD.zip
Presently, I don't have time to dig into this further. Working a lot and doing family. I would like to avoid purchasing a new display simply so that it is out-of-the-box compatible with GUIslice when I know that myLCD can be configured with the application. the GUIslice Builder cross-platform app looks incredible and I have already utilized it as a way to speed up the process of compiling code to my device. Adding support for this display could open the doors up for a lot of new development using GUIslice on other screens with the same hardware and pinout. My experience is currently limited and I would not be able to create a GUI so quickly were it not for the help of GUIslice. This platform is going to become my mainstay for navigating the user interface of my project. If nothing else, someone please help send me in the right direction. I have been through these files enough that my head is spinning and I'm at a loss for progress. SD access is not imperative, however, touch and graphic support are. Currently, my screen is white when the code compiles. I can only assume that something is not correct with the configuration files and I just feel as though I've been chasing my tail.
This is a picture of the back of myLCD:

Sincerely,
Au42
[Edit by Cal: Added code formatting]

To be clear:
I am supposed to go to the repository online and download the file configs/ard-adagfx-mcufriend-simple.h and rename to configs/my_tft35.h
then...
Modify configs/my_tft35.h by changing:
#define ADATOUCH_X_MIN 907
#define ADATOUCH_Y_MIN 942
#define ADATOUCH_X_MAX 136
#define ADATOUCH_Y_MAX 139
Modify /src/GUIslice_config.h to add the following line: (ensure no other files in the EXAMPLE CONFIGURATIONS section are uncommented)
uncomment everything?
#include "../configs/my_tft35.h"
did this.
compile error
// FILE: test.ino
//
// GUIslice Builder Generated File
//
// ARDUINO NOTES:
// - GUIslice_config.h must be edited to match the pinout connections
//   between the Arduino CPU and the display controller (see ADAGFX_PIN_*).
//
#include "GUIslice.h"
#include "GUIslice_ex.h"
#include "GUIslice_drv.h"
#include <Adafruit_GFX.h>
// Note that font files are located within the Adafruit-GFX library folder:
//<Fonts !Start!>
//<Fonts !End!>
// ------------------------------------------------
// Defines for resources
// ------------------------------------------------
//<Resources !Start!>
//<Resources !End!>
// ------------------------------------------------
// Enumerations for pages, elements, fonts, images
// ------------------------------------------------
//<Enum !Start!>
enum {E_PG_MAIN,E_PG2,E_PG3};
enum {E_BTN1,E_BTN2,E_BTN4};
enum {E_FONT_TXT1};
//<Enum !End!>
// ------------------------------------------------
// Instantiate the GUI
// ------------------------------------------------
// Define the maximum number of elements per page
//<ElementDefines !Start!>
#define MAX_PAGE                3
#define MAX_FONT                1
#define MAX_ELEM_PG_MAIN        1
#define MAX_ELEM_PG_MAIN_RAM MAX_ELEM_PG_MAIN
#define MAX_ELEM_PG_EXTRA1      1
#define MAX_ELEM_PG_EXTRA_RAM1 MAX_ELEM_PG_EXTRA1
#define MAX_ELEM_PG_EXTRA2      1
#define MAX_ELEM_PG_EXTRA_RAM2 MAX_ELEM_PG_EXTRA2
//<ElementDefines !End!>
// GUI Elements
gslc_tsGui                      m_gui;
gslc_tsDriver                   m_drv;
gslc_tsFont                     m_asFont[MAX_FONT];
gslc_tsPage                     m_asPage[MAX_PAGE];
gslc_tsElem                     m_asMainElem[MAX_ELEM_PG_MAIN_RAM];
gslc_tsElemRef                  m_asMainElemRef[MAX_ELEM_PG_MAIN];
//<GUI_Extra_Elements !Start!>
gslc_tsElem              m_asExtraElem[MAX_ELEM_PG_EXTRA_RAM1];
gslc_tsElemRef           m_asExtraElemRef[MAX_ELEM_PG_EXTRA1];
gslc_tsElem              m_asExtraElem[MAX_ELEM_PG_EXTRA_RAM2];
gslc_tsElemRef           m_asExtraElemRef[MAX_ELEM_PG_EXTRA2];
#define MAX_STR                 100
//<GUI_Extra_Elements !End!>
// ------------------------------------------------
// Save some element references for update loop access
// ------------------------------------------------
//<Save_References !Start!>
//<Save_References !End!>
// ------------------------------------------------
// Program Globals
// ------------------------------------------------
// Define debug message function
static int16_t DebugOut(char ch) { if (ch == (char)'\n') Serial.println(""); else Serial.write(ch); return 0; }
// ------------------------------------------------
// Callback Methods
// ------------------------------------------------
// Common Button callback
bool CbBtnCommon(void* pvGui,void pvElemRef,gslc_teTouch eTouch,int16_t nX,int16_t nY)
{
gslc_tsElemRef pElemRef = (gslc_tsElemRef*)(pvElemRef);
gslc_tsElem* pElem = pElemRef->pElem;
if ( eTouch == GSLC_TOUCH_UP_IN ) {
// From the element's ID we can determine which button was pressed.
switch (pElem->nId) {
//<Button Enums !Start!>
case E_BTN1:
gslc_SetPageCur(&m_gui,);
break;
case E_BTN2:
gslc_SetPageCur(&m_gui,);
break;
case E_BTN4:
gslc_SetPageCur(&m_gui,);
break;
//<Button Enums !End!>
default:
break;
}
}
return true;
}
//<Draw Callback !Start!>
//<Draw Callback !End!>
//<Slider Callback !Start!>
//<Slider Callback !End!>
//<Tick Callback !Start!>
//<Tick Callback !End!>
// ------------------------------------------------
// Create page elements
// ------------------------------------------------
bool InitGUI()
{
gslc_tsElemRef* pElemRef = NULL;
//<InitGUI !Start!>
gslc_PageAdd(&m_gui,E_PG_MAIN,m_asMainElem,MAX_ELEM_PG_MAIN_RAM,m_asMainElemRef,MAX_ELEM_PG_MAIN);
gslc_PageAdd(&m_gui,E_PG2,m_asExtraElem,MAX_ELEM_PG_EXTRA_RAM1,m_asExtraElemRef,MAX_ELEM_PG_EXTRA1);
gslc_PageAdd(&m_gui,E_PG3,m_asExtraElem,MAX_ELEM_PG_EXTRA_RAM2,m_asExtraElemRef,MAX_ELEM_PG_EXTRA2);
// Background flat color
gslc_SetBkgndColor(&m_gui,GSLC_COL_BLACK);
// -----------------------------------
// PAGE: E_PG_MAIN
// create E_BTN1 button with text label
pElemRef = gslc_ElemCreateBtnTxt(&m_gui,E_BTN1,E_PG_MAIN,
(gslc_tsRect){230,190,80,40},(char*)"Button",0,E_FONT_TXT1,&CbBtnCommon);
// -----------------------------------
// PAGE: E_PG2
// create E_BTN2 button with text label
pElemRef = gslc_ElemCreateBtnTxt(&m_gui,E_BTN2,E_PG2,
(gslc_tsRect){110,80,80,40},(char*)"Button",0,E_FONT_TXT1,&CbBtnCommon);
// -----------------------------------
// PAGE: E_PG3
// create E_BTN4 button with text label
pElemRef = gslc_ElemCreateBtnTxt(&m_gui,E_BTN4,E_PG3,
(gslc_tsRect){80,10,80,40},(char*)"Button",0,E_FONT_TXT1,&CbBtnCommon);
//<InitGUI !End!>
return true;
}
void setup()
{
// ------------------------------------------------
// Initialize
// ------------------------------------------------
Serial.begin(9600);
// Wait for USB Serial
while (!Serial) {
yield();
}
gslc_InitDebug(&DebugOut);
if (!gslc_Init(&m_gui,&m_drv,m_asPage,MAX_PAGE,m_asFont,MAX_FONT)) { return; }
// ------------------------------------------------
// Load Fonts
// ------------------------------------------------
//<Load_Fonts !Start!>
if (!gslc_FontAdd(&m_gui,E_FONT_TXT1,GSLC_FONTREF_PTR,NULL,1)) { return; }
//<Load_Fonts !End!>
// ------------------------------------------------
// Create graphic elements
// ------------------------------------------------
InitGUI();
// ------------------------------------------------
// Save some element references for quick access
// ------------------------------------------------
//<Quick_Access !Start!>
//<Quick_Access !End!>
// ------------------------------------------------
// Start up display on main page
// ------------------------------------------------
gslc_SetPageCur(&m_gui,E_PG_MAIN);
}
// -----------------------------------
// Main event loop
// -----------------------------------
void loop()
{
// ------------------------------------------------
// Update GUI Elements
// ------------------------------------------------
//TODO - Add update code for any text, gauges, or sliders
// ------------------------------------------------
// Periodically call GUIslice update function
// ------------------------------------------------
gslc_Update(&m_gui);
}
probably user error.
my_tft35.h
#ifndef GUISLICE_CONFIG_ARD_H
#define GUISLICE_CONFIG_ARD_H
// =============================================================================
// GUIslice library (example user configuration #???) for:
//   - CPU:     Arduino UNO (ATmega328P)
//              Arduino Mega2560 (ATmega2560)
//   - Display: mcufriend (various)
//   - Touch:   Simple Analog (Resistive)
//   - Wiring:  Uno/MEGA shield
//              - Display pinout defined by mcufriend_kbv library
//              - Touch pinout:
//                  CPU     Touch
//                  ----    -------
//                  A1      YP / Y+
//                  A2      XM / X-
//                  7       YM / Y-
//                  6       XP / X+
//
//   - Example display:
//     -
//
// DIRECTIONS:
// - To use this example configuration, include in "GUIslice_config.h"
//
// WIRING:
// - The pinout configuration may need to be modified to match your wiring
//
// =============================================================================
// - Calvin Hass
// - https://github.com/ImpulseAdventure/GUIslice
// =============================================================================
//
// The MIT License
//
// Copyright 2016-2019 Calvin Hass
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
// in the Software without restriction, including without limitation the rights
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
// copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in
// all copies or substantial portions of the Software.
 IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
//
// =============================================================================
// \file GUIslice_config_ard.h
// =============================================================================
// User Configuration
// - This file can be modified by the user to match the
//   intended target configuration
// =============================================================================
#ifdef __cplusplus
extern "C" {
#endif // __cplusplus
// =============================================================================
// USER DEFINED CONFIGURATION
// =============================================================================
// -----------------------------------------------------------------------------
// Device Mode Selection
// - The following defines the display and touch drivers
//   and should not require modifications for this example config
// -----------------------------------------------------------------------------
#define DRV_DISP_ADAGFX           // Adafruit-GFX library
#define DRV_DISP_ADAGFX_MCUFRIEND // MCUFRIEND_kbv display driver
#define DRV_TOUCH_ADA_SIMPLE      // Adafruit_TouchScreen touch driver
// -----------------------------------------------------------------------------
// Pinout
// -----------------------------------------------------------------------------
// SD Card
#define ADAGFX_PIN_SDCS     4     // SD card chip select (if GSLC_SD_EN=1)
// -----------------------------------------------------------------------------
// Orientation
// -----------------------------------------------------------------------------
// Set Default rotation of the display
// - Values 0,1,2,3. Rotation is clockwise
// - Note that changing this value may require a change
//   to GSLC_TOUCH_ROTATE as well to ensure the touch screen
//   orientation matches the display.
#define GSLC_ROTATE     1
// Set Default rotation of the touch overlay
// - Values 0,1,2,3. Rotation is clockwise
#define GSLC_TOUCH_ROTATE 3
// -----------------------------------------------------------------------------
// Touch Handling
// - Documentation for configuring touch support can be found at:
//   https://github.com/ImpulseAdventure/GUIslice/wiki/Configure-Touch-Support
// -----------------------------------------------------------------------------
// Pinout for DRV_TOUCH_SIMPLE 4-wire resistive touchscreen
#define ADATOUCH_PIN_YP   A1    // "Y+": Must be an analog pin
#define ADATOUCH_PIN_XM   A2    // "X-": Must be an analog pin
#define ADATOUCH_PIN_YM   7     // "Y-": Can be a digital pin
#define ADATOUCH_PIN_XP   6     // "X+": Can be a digital pin
#define ADATOUCH_RX       300   // "rxplate"
// Calibration for DRV_TOUCH_STMPE610 & DRV_TOUCH_SIMPLE
// - These values may need to be updated to match your display
// - Typically used in resistive displays
// - These values can be determined from the Adafruit touchtest example sketch
//   (check for min and max values reported from program as you touch display
//   corners)
// - Note that X & Y directions reference the display's natural orientation
#define ADATOUCH_X_MIN    907
#define ADATOUCH_Y_MIN    942
#define ADATOUCH_X_MAX    136
#define ADATOUCH_Y_MAX    139
// DRV_TOUCH_SIMPLE: Define pressure threshold for detecting a touch
#define ADATOUCH_PRESS_MIN  10
#define ADATOUCH_PRESS_MAX  1000
// -----------------------------------------------------------------------------
// Diagnostics
// -----------------------------------------------------------------------------
// Error reporting
// - Set DEBUG_ERR to 1 to enable error reporting via the Serial connection
// - Enabling DEBUG_ERR increases FLASH memory consumption which may be
//   limited on the baseline Arduino (ATmega328P) devices.
// - For baseline Arduino UNO, recommended to disable this after one has
//   confirmed basic operation of the library is successful.
#define DEBUG_ERR               1   // 1 to enable, 0 to disable
// Debug initialization message
// - By default, GUIslice outputs a message in DEBUG_ERR mode
//   to indicate the initialization status, even during success.
// - To disable the messages during successful initialization,
//   uncomment the following line.
//#define INIT_MSG_DISABLE
// -----------------------------------------------------------------------------
// Optional Features
// -----------------------------------------------------------------------------
// Enable of optional features
// - For memory constrained devices such as Arduino, it is best to
//   set the following features to 0 (to disable) unless they are
//   required.
#define GSLC_FEATURE_COMPOUND       0   // Compound elements (eg. XSelNum)
#define GSLC_FEATURE_XGAUGE_RADIAL  0   // XGauge control with radial support
#define GSLC_FEATURE_XGAUGE_RAMP    0   // XGauge control with ramp support
#define GSLC_FEATURE_XTEXTBOX_EMBED 0   // XTextbox control with embedded color
#define GSLC_FEATURE_INPUT          0   // Keyboard / GPIO input control
// Enable support for SD card
// - Set to 1 to enable, 0 to disable
// - Note that the inclusion of the SD library consumes considerable
//   RAM and flash memory which could be problematic for Arduino models
//   with limited resources.
#define GSLC_SD_EN    0
// =============================================================================
// INTERNAL CONFIGURATION
// - The following settings should not require modification by users
// =============================================================================
// -----------------------------------------------------------------------------
// Touch Handling
// -----------------------------------------------------------------------------
// Define how touch orientation changes with display orientation
#define TOUCH_ROTATION_DATA 0x6350
#define TOUCH_ROTATION_SWAPXY(rotation) ((( TOUCH_ROTATION_DATA >> ((rotation&0x03)*4) ) >> 2 ) & 0x01 )
#define TOUCH_ROTATION_FLIPX(rotation)  ((( TOUCH_ROTATION_DATA >> ((rotation&0x03)*4) ) >> 1 ) & 0x01 )
#define TOUCH_ROTATION_FLIPY(rotation)  ((( TOUCH_ROTATION_DATA >> ((rotation&0x03)*4) ) >> 0 ) & 0x01 )
// - Set any of the following to 1 to perform touch display
//   remapping functions, 0 to disable. Use DBG_TOUCH to determine which
//   remapping modes should be enabled for your display
// - Please refer to "docs/GUIslice_config_guide.xlsx" for detailed examples
// - NOTE: Both settings, GLSC_TOUCH_ROTATE and SWAP / FLIP are applied,
//         try to set _SWAP_XY and _FLIP_X/Y to 0 and only use GLSC_TOUCH_ROTATE
#define ADATOUCH_SWAP_XY  0
#define ADATOUCH_FLIP_X   0
#define ADATOUCH_FLIP_Y   0
// Define the maximum number of touch events that are handled
// per gslc_Update() call. Normally this can be set to 1 but certain
// displays may require a greater value (eg. 30) in order to increase
// responsiveness of the touch functionality.
#define GSLC_TOUCH_MAX_EVT    1
// -----------------------------------------------------------------------------
// Misc
// -----------------------------------------------------------------------------
// Define buffer size for loading images from SD
// - A larger buffer will be faster but at the cost of RAM
#define GSLC_SD_BUFFPIXEL   50
// Enable support for graphics clipping (DrvSetClipRect)
// - Note that this will impact performance of drawing graphics primitives
#define GSLC_CLIP_EN 1
// Enable for bitmap transparency and definition of color to use
#define GSLC_BMP_TRANS_EN     1               // 1 = enabled, 0 = disabled
#define GSLC_BMP_TRANS_RGB    0xFF,0x00,0xFF  // RGB color (default:pink)
#define GSLC_USE_FLOAT      0   // 1=Use floating pt library, 0=Fixed-point lookup tables
#define GSLC_DEV_TOUCH ""
#define GSLC_USE_PROGMEM 1
#define GSLC_LOCAL_STR      0   // 1=Use local strings (in element array), 0=External
#define GSLC_LOCAL_STR_LEN  30  // Max string length of text elements
// -----------------------------------------------------------------------------
// Debug diagnostic modes
// -----------------------------------------------------------------------------
// - Uncomment any of the following to enable specific debug modes
//#define DBG_LOG           // Enable debugging log output
//#define DBG_TOUCH         // Enable debugging of touch-presses
//#define DBG_FRAME_RATE    // Enable diagnostic frame rate reporting
//#define DBG_DRAW_IMM      // Enable immediate rendering of drawing primitives
//#define DBG_DRIVER        // Enable graphics driver debug reporting
// =============================================================================
#ifdef __cplusplus
}
#endif // __cplusplus
#endif // GUISLICE_CONFIG_ARD_H
GUIslice_config.h
#ifndef GUISLICE_CONFIG_H
#define GUISLICE_CONFIG_H
// =======================================================================
// GUIslice library (user configuration) selection by device
// - Calvin Hass
// - https://www.impulseadventure.com/elec/guislice-gui.html
// - https://github.com/ImpulseAdventure/GUIslice
// =======================================================================
//
// The MIT License
//
// Copyright 2016-2019 Calvin Hass
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
// in the Software without restriction, including without limitation the rights
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
// copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in
// all copies or substantial portions of the Software.
 IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
//
// =======================================================================
// \file GUIslice_config.h
#ifdef __cplusplus
extern "C" {
#endif // __cplusplus
// =========================================================================================
// SELECT ONE OF THE FOLLOWING EXAMPLE CONFIGURATIONS OR ADD YOUR OWN
// - Uncomment one of the following lines
// - These example configurations are located in the /configs folder
// - To add your own, make a copy of an example config, rename it
//   and add it to the list here.
// - If no line is uncommented, then the default combined configuration
//   file will be used, ie. GUIslice_config_ard.h / GUIslice_config_linux.h
//   which is selected at the bottom of this file
// - Refer to https://github.com/ImpulseAdventure/GUIslice/wiki/Display-Config-Table
//   to help identify a suitable config for your MCU shield / display
// =========================================================================================
// ---------------------------------------------------------------------------------------
// Add your own configs here:
// ---------------------------------------------------------------------------------------
#include "C:\Users\Luck\Documents\Arduino\libraries\GUIslice-master\configs"
// ---------------------------------------------------------------------------------------
// Example configs included in library /configs:
// ---------------------------------------------------------------------------------------
// Arduino, ARM SAMD, Cortex M0/M4, nRF52:
// ------------------------------------------------------
#include "../configs/ard-adagfx-hx8357-ft6206.h"
#include "../configs/ard-adagfx-hx8357-notouch.h"
#include "../configs/ard-adagfx-hx8357-simple.h"
#include "../configs/ard-adagfx-hx8357-stmpe610.h"
#include "../configs/ard-adagfx-ili9341-ft6206.h"
#include "../configs/ard-adagfx-ili9341-input.h"
#include "../configs/ard-adagfx-ili9341-notouch.h"
#include "../configs/ard-adagfx-ili9341-simple.h"
#include "../configs/ard-adagfx-ili9341-stmpe610.h"
#include "../configs/ard-adagfx-mcufriend-notouch.h"
#include "../configs/ard-adagfx-mcufriend-simple.h"
#include "../configs/ard-adagfx-pcd8544-notouch.h"
#include "../configs/ard-adagfx-shld-tft18v2.h"
#include "../configs/ard-adagfx-ssd1306-notouch.h"
#include "../configs/ard-adagfx-st7735-notouch.h"
// ESP-8266, ESP32, M5stack, TTGO:
// ------------------------------------------------------
#include "../configs/esp-tftespi-default-ft6206.h"
#include "../configs/esp-tftespi-default-notouch.h"
#include "../configs/esp-tftespi-default-simple.h"
#include "../configs/esp-tftespi-default-stmpe610.h"
#include "../configs/esp-tftespi-default-xpt2046.h"
#include "../configs/m5-m5-default-btn3.h"
#include "../configs/m5-m5-default-notouch.h"
#include "../configs/ttgo-adagfx-ili9341-notouch.h"
// Multi-device shields:
// ------------------------------------------------------
#include "../configs/misc-adagfx-shld-featherwing24.h"
// Raspberry Pi / LINUX:
// ------------------------------------------------------
//#include "../configs/rpi-sdl1-default-tslib.h"
//#include "../configs/linux-sdl1-default-mouse.h"
// =========================================================================================
// DEFAULT COMBINED CONFIGURATION FILE
// - If no user configuration has been selected, a default config will be selected here
// - Note that the include guard GUISLICE_CONFIG_ARD_H and GUISLICE_CONFIG_LINUX_H
//   will prevent these from loading if any of the user configs have been loaded
// =========================================================================================
// Import user configuration depending on device type
#if defined(linux)
#include "GUIslice_config_linux.h"
#elif defined(AVR) || defined(ARDUINO_SAMD_ZERO)
#include "GUIslice_config_ard.h"
#elif defined(ESP8266) || defined(ESP32)
#include "GUIslice_config_ard.h"
#elif defined(NRF52)
#include "GUIslice_config_ard.h"
#elif defined(ARDUINO_STM32_FEATHER) || defined(STM32F1)
#include "GUIslice_config_ard.h"
#elif defined(ARDUINO_ARCH_STM32)  // ST Core from STMicroelectronics
#include "GUIslice_config_ard.h"
#elif defined(ARDUINO_ARCH_SAM)   // DUE
#include "GUIslice_config_ard.h"
#elif defined(ARDUINO_ARCH_SAMD)   // M0_PRO
#include "GUIslice_config_ard.h"
#else
#error "Unknown device platform"
#endif
// -----------------------------------------------------------------------------------------
#ifdef __cplusplus
}
#endif // __cplusplus
#endif // GUISLICE_CONFIG_H
...
unsure.

Hi @au42bl --
Thank you for supplying your config and code examples... very helpful!
The changes you made to the my_tft35.h file looked fine to me.
There were two issues that were likely causing your compiler error:

GUIslice_config.h: We only wanted to add a single line #include "../configs/my_tft35.h" and leave everything else as-is (ie. uncommented). It seems that in your version all other include lines were uncommented. My apologies if my suggestion was unclear.
test.ino: It looks like your generated file had the Builder issue that Paul had reported in https://github.com/ImpulseAdventure/GUIslice/issues/95#issuecomment-458170894 causing duplicate variables. This has been fixed in the upcoming Builder version.

I have fixed the above for you and attached as files190202_fix1.zip. Please unzip these files and replace the ones you had with these. On my side, these appear to compile OK.
files190202_fix1.zip
Lastly, please ensure that you are using the latest release of GUIslice from GitHub.

Refer to Installing GUIslice from GitHub

Hope that helps!

Calvin,
Firstly, I thank you tremendously for your help. I am working on overtime currently and have a family. Things are far from easy around here and you have really made this driver support issue come together relatively easy for me.
Second: WE HAVE GRAPHICS SUPPORT!
Third: No touch support. So long as my GUI Builder sketch is drawn properly, I should be able to touch the buttons and cycle through pages 1-3 continuously. 1:2 2:3 3:1 and so on. No such luck.
I decided to rewrite the simple sketch and drop it back into my "test" folder to see if that might change something. Ran into that duplicate variable error. I'm not an experienced programmer so I don't quite know what all is happening there. My thoughts were that perhaps your test.ino sketch was different than my original. It looks as though the button placement does not match my saved file. On the .ino file you zipped, I have no touch support. Forgot about that error.
This is great news. However, the touch support is key in utilizing your platform as intended.

That is great to hear that the display is working for you.
As for the touch support on your 4-wire resistive display, we need to ensure that both the pin settings and the calibration settings are matched to your display. The latest development version of GUIslice includes some diagnostic sketches to do this, but for now, please paste in the output from David Prentice's MCUFRIEND_kbv library TouchScreen_Calibr_native sketch. Have the serial monitor window open before you start.
Regarding the duplicate variable, I am including examples below that show how you can fix it (in advance of the updated Builder being available). Please see the text that has been added in dark red:

I am also attaching a slightly modified version of the "fix1" from the one I included in my previous update. This one makes the buttons advance to the next pages, which I believe was the intent of your original code.
files190202_fix2.zip
Cal

Very good, sir.
I will be reviewing these changes and soon moving into programming with GUISlice. Correct on your assumption of page-advance. Not sure if I had not selected that within the builder. I will address these issues and be back in touch. Thank you.

I am actually confused about what you have instructed me to do with the MCUFRIEND_kbv library.

Hi -- the MCUFRIEND_kbv library includes a sketch that will test and report both the pin settings and also the calibration settings suitable for your display. So, just open the serial monitor in the IDE, select File → Examples → MCUFRIEND_kbv → TouchScreen_Calibr_native and then Upload. Follow the directions and then copy & paste the resulting output into this issue, I can convert those settings into values that we can use in your my_tft35.h GUIslice configuration. Hope that helps clarify the recommendation.

Oh, yes that makes good sense. I understand that.

This worked. So, now how to translate this touch support to GUIslice integration?

TouchScreen.h GFX Calibration
Making all control and bus pins INPUT_PULLUP
Typical 30k Analog pullup with corresponding pin
would read low when digital is written LOW
e.g. reads ~25 for 300R X direction
e.g. reads ~30 for 500R Y direction
Testing : (A2, D8) = 21
Testing : (A3, D9) = 31
Diagnosing as:-
XM,XP:  (A2, D8) = 21
YP,YM:  (A3, D9) = 31
ID = 0x9486

Thanks... was there any more output from the mcufriend calibration sketch? Usually after reporting the diagnostic lines you posted it then presents you a series of crosshair targets to touch. After clicking on all 8 targets it should output the calibration settings.
Once we have your calibration settings, please post them here. I (or you) could then convert them into GUIslice config according to my documentation on Importing Calibration from mcufriend_kbv.

Sorry, was pushing it last night. Falling over trying to get this up and running so I can start development of source and integration of peripherals. Here I have to calibration settings.
MCUFRIEND_kbv  ID= x9486   320 x 480
PORTRAIT CALIBRATION 320 x 480
x = map(p.y, LEFT=521, RT=499, 0, 320)
y = map(p.x, TOP=552, BOT=564, 0, 480)
Touch Pin Wiring XP=8 XM=A2 YP=A3 YM=9
LANDSCAPE CALIBRATION 480 X 320
x = map(p.y, LEFT=552, RT=564, 0, 480)
y = map(p.x, TOP=499, BOT=521, 0, 320)
That is the rest of the information.
I have a feeling that we are very near the end of this case. As soon as I am able to achieve touch support, that is it. The process has been simplified with your help but still is very in-depth. A lot of small changes.
For now, I have provided you the information. In the event that I am unable to configure the settings immediately, at least the information is here now.

Cant seem to copy Serial Monitor output on calibration settings. Plugged them into config file still no luck. Here is updated file.
#ifndef GUISLICE_CONFIG_ARD_H
#define GUISLICE_CONFIG_ARD_H
// =============================================================================
// GUIslice library (example user configuration #???) for:
//   - CPU:     Arduino UNO (ATmega328P)
//              Arduino Mega2560 (ATmega2560)
//   - Display: mcufriend (various)
//   - Touch:   Simple Analog (Resistive)
//   - Wiring:  Uno/MEGA shield
//              - Display pinout defined by mcufriend_kbv library
//              - Touch pinout:
//                  CPU     Touch
//                  ----    -------
//                  A1      YP / Y+
//                  A2      XM / X-
//                  7       YM / Y-
//                  6       XP / X+
//
//   - Example display:
//     -
//
// DIRECTIONS:
// - To use this example configuration, include in "GUIslice_config.h"
//
// WIRING:
// - The pinout configuration may need to be modified to match your wiring
//
// =============================================================================
// - Calvin Hass
// - https://github.com/ImpulseAdventure/GUIslice
// =============================================================================
//
// The MIT License
//
// Copyright 2016-2019 Calvin Hass
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
// in the Software without restriction, including without limitation the rights
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
// copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in
// all copies or substantial portions of the Software.
 IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
//
// =============================================================================
// \file GUIslice_config_ard.h
// =============================================================================
// User Configuration
// - This file can be modified by the user to match the
//   intended target configuration
// =============================================================================
#ifdef __cplusplus
extern "C" {
#endif // __cplusplus
// =============================================================================
// USER DEFINED CONFIGURATION
// =============================================================================
// -----------------------------------------------------------------------------
// Device Mode Selection
// - The following defines the display and touch drivers
//   and should not require modifications for this example config
// -----------------------------------------------------------------------------
#define DRV_DISP_ADAGFX           // Adafruit-GFX library
#define DRV_DISP_ADAGFX_MCUFRIEND // MCUFRIEND_kbv display driver
#define DRV_TOUCH_ADA_SIMPLE      // Adafruit_TouchScreen touch driver
// -----------------------------------------------------------------------------
// Pinout
// -----------------------------------------------------------------------------
// SD Card
#define ADAGFX_PIN_SDCS     10     // SD card chip select (if GSLC_SD_EN=1)
// -----------------------------------------------------------------------------
// Orientation
// -----------------------------------------------------------------------------
// Set Default rotation of the display
// - Values 0,1,2,3. Rotation is clockwise
// - Note that changing this value may require a change
//   to GSLC_TOUCH_ROTATE as well to ensure the touch screen
//   orientation matches the display.
#define GSLC_ROTATE     1
// Set Default rotation of the touch overlay
// - Values 0,1,2,3. Rotation is clockwise
#define GSLC_TOUCH_ROTATE 3
// -----------------------------------------------------------------------------
// Touch Handling
// - Documentation for configuring touch support can be found at:
//   https://github.com/ImpulseAdventure/GUIslice/wiki/Configure-Touch-Support
// -----------------------------------------------------------------------------
// Pinout for DRV_TOUCH_SIMPLE 4-wire resistive touchscreen
#define ADATOUCH_PIN_YP   A3    // "Y+": Must be an analog pin
#define ADATOUCH_PIN_XM   A2    // "X-": Must be an analog pin
#define ADATOUCH_PIN_YM   9   // "Y-": Can be a digital pin
#define ADATOUCH_PIN_XP    8     // "X+": Can be a digital pin
#define ADATOUCH_RX       300   // "rxplate"
// Calibration for DRV_TOUCH_STMPE610 & DRV_TOUCH_SIMPLE
// - These values may need to be updated to match your display
// - Typically used in resistive displays
// - These values can be determined from the Adafruit touchtest example sketch
//   (check for min and max values reported from program as you touch display
//   corners)
// - Note that X & Y directions reference the display's natural orientation
#define ADATOUCH_X_MIN    502
#define ADATOUCH_Y_MIN    556
#define ADATOUCH_X_MAX    509
#define ADATOUCH_Y_MAX    549
// DRV_TOUCH_SIMPLE: Define pressure threshold for detecting a touch
#define ADATOUCH_PRESS_MIN  10
#define ADATOUCH_PRESS_MAX  1000
// -----------------------------------------------------------------------------
// Diagnostics
// -----------------------------------------------------------------------------
// Error reporting
// - Set DEBUG_ERR to 1 to enable error reporting via the Serial connection
// - Enabling DEBUG_ERR increases FLASH memory consumption which may be
//   limited on the baseline Arduino (ATmega328P) devices.
// - For baseline Arduino UNO, recommended to disable this after one has
//   confirmed basic operation of the library is successful.
#define DEBUG_ERR               1   // 1 to enable, 0 to disable
// Debug initialization message
// - By default, GUIslice outputs a message in DEBUG_ERR mode
//   to indicate the initialization status, even during success.
// - To disable the messages during successful initialization,
//   uncomment the following line.
//#define INIT_MSG_DISABLE
// -----------------------------------------------------------------------------
// Optional Features
// -----------------------------------------------------------------------------
// Enable of optional features
// - For memory constrained devices such as Arduino, it is best to
//   set the following features to 0 (to disable) unless they are
//   required.
#define GSLC_FEATURE_COMPOUND       0   // Compound elements (eg. XSelNum)
#define GSLC_FEATURE_XGAUGE_RADIAL  0   // XGauge control with radial support
#define GSLC_FEATURE_XGAUGE_RAMP    0   // XGauge control with ramp support
#define GSLC_FEATURE_XTEXTBOX_EMBED 0   // XTextbox control with embedded color
#define GSLC_FEATURE_INPUT          0   // Keyboard / GPIO input control
// Enable support for SD card
// - Set to 1 to enable, 0 to disable
// - Note that the inclusion of the SD library consumes considerable
//   RAM and flash memory which could be problematic for Arduino models
//   with limited resources.
#define GSLC_SD_EN    0
// =============================================================================
// INTERNAL CONFIGURATION
// - The following settings should not require modification by users
// =============================================================================
// -----------------------------------------------------------------------------
// Touch Handling
// -----------------------------------------------------------------------------
// Define how touch orientation changes with display orientation
#define TOUCH_ROTATION_DATA 0x6350
#define TOUCH_ROTATION_SWAPXY(rotation) ((( TOUCH_ROTATION_DATA >> ((rotation&0x03)*4) ) >> 2 ) & 0x01 )
#define TOUCH_ROTATION_FLIPX(rotation)  ((( TOUCH_ROTATION_DATA >> ((rotation&0x03)*4) ) >> 1 ) & 0x01 )
#define TOUCH_ROTATION_FLIPY(rotation)  ((( TOUCH_ROTATION_DATA >> ((rotation&0x03)*4) ) >> 0 ) & 0x01 )
// - Set any of the following to 1 to perform touch display
//   remapping functions, 0 to disable. Use DBG_TOUCH to determine which
//   remapping modes should be enabled for your display
// - Please refer to "docs/GUIslice_config_guide.xlsx" for detailed examples
// - NOTE: Both settings, GLSC_TOUCH_ROTATE and SWAP / FLIP are applied,
//         try to set _SWAP_XY and _FLIP_X/Y to 0 and only use GLSC_TOUCH_ROTATE
#define ADATOUCH_SWAP_XY  0
#define ADATOUCH_FLIP_X   0
#define ADATOUCH_FLIP_Y   0
// Define the maximum number of touch events that are handled
// per gslc_Update() call. Normally this can be set to 1 but certain
// displays may require a greater value (eg. 30) in order to increase
// responsiveness of the touch functionality.
#define GSLC_TOUCH_MAX_EVT    1
// -----------------------------------------------------------------------------
// Misc
// -----------------------------------------------------------------------------
// Define buffer size for loading images from SD
// - A larger buffer will be faster but at the cost of RAM
#define GSLC_SD_BUFFPIXEL   50
// Enable support for graphics clipping (DrvSetClipRect)
// - Note that this will impact performance of drawing graphics primitives
#define GSLC_CLIP_EN 1
// Enable for bitmap transparency and definition of color to use
#define GSLC_BMP_TRANS_EN     1               // 1 = enabled, 0 = disabled
#define GSLC_BMP_TRANS_RGB    0xFF,0x00,0xFF  // RGB color (default:pink)
#define GSLC_USE_FLOAT      0   // 1=Use floating pt library, 0=Fixed-point lookup tables
#define GSLC_DEV_TOUCH ""
#define GSLC_USE_PROGMEM 1
#define GSLC_LOCAL_STR      0   // 1=Use local strings (in element array), 0=External
#define GSLC_LOCAL_STR_LEN  30  // Max string length of text elements
// -----------------------------------------------------------------------------
// Debug diagnostic modes
// -----------------------------------------------------------------------------
// - Uncomment any of the following to enable specific debug modes
//#define DBG_LOG           // Enable debugging log output
//#define DBG_TOUCH         // Enable debugging of touch-presses
//#define DBG_FRAME_RATE    // Enable diagnostic frame rate reporting
//#define DBG_DRAW_IMM      // Enable immediate rendering of drawing primitives
//#define DBG_DRIVER        // Enable graphics driver debug reporting
// =============================================================================
#ifdef __cplusplus
}
#endif // __cplusplus
#endif // GUISLICE_CONFIG_ARD_H

Calvin,
Thank you. I have acknowledged your request to be in touch via email. What
information may I provide you with to help aid in resolving this matter. I
noticed your mytft_36.h file calibration outputs and pin configs did not
match the serial output calibration information I was given during test. I
reconfigured the file with the given information and yet no change. At this
point, I don't know where the problem lies. Am willing to start from basics
and gather everything, put it the way it should be, save it and recompile.
All the information should be available now, the challenge seems to be
properly adjusting the config files. I have this afternoon to correct the
matter. Thank you for your patience.
On Sun, Feb 3, 2019, 11:24 AM Calvin Hass<EMAIL_ADDRESS>wrote:

Thank you @au42bl https://github.com/au42bl for the additional info.
If you can send me a quick email to<EMAIL_ADDRESS>I should be able
to help narrow down the config for you, as the output from your
MCUFRIEND_kbv calibration looks a bit surprising. Thanks!
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/ImpulseAdventure/GUIslice/issues/104#issuecomment-460065808,
or mute the thread
https://github.com/notifications/unsubscribe-auth/As48GRCHisOnHzVJpgxMtB80VpplF-yBks5vJw0lgaJpZM4aU52K
.

Thank you - I will send you a followup email so we can get it working for you.
With displays that I already have on-hand & tested, it should be a simple matter of copying over the appropriate example config. In this particular case I don't have access to the matching hardware to test (my replacement 3.5" shield is still waiting to arrive), so it can sometimes be more challenging. I'll give you some recommendations in the email and then followup later here with the results. thx

I have forwarded you a compressed folder with the header files as they
exist currently on my end. If you need more files please let me know. I am
willing to start over with the proper files and reformat them once again
from the start. Now that I know what config files are critical in the
matter and how to obtain the screen information from my device, it should
be a simple matter, as you say. Perhaps I have confused some settings
throughout this process or transcribed something incorrectly. Starting over
may be a good thing now that all the information should be available. At
this point, it should be no harder than going through the provided
information, ensuring correct entry into the config files, and eliminating
any files or information that doesn't pertain. Thanks again for your time
and help. It has been a pleasure working with you.
Brandon L. Luckadoo | CETa
Associate Certified Electronics Technician, ETA-I
Brandon L Luckadoo - LinkedIn
https://www.linkedin.com/in/bluckadooBrandon L Luckadoo - Indeed
https://resumes.indeed.com/resume/0eb97ce9956f6cba
On Sun, Feb 3, 2019 at 12:02 PM Calvin Hass<EMAIL_ADDRESS>wrote:

Thank you - I will send you a followup email so we can get it working for
you.
With displays that I already have on-hand & tested, it should be a simple
matter of copying over the appropriate example config. In this particular
case I don't have access to the matching hardware to test (my replacement
3.5" shield is still waiting to arrive), so it can sometimes be more
challenging. I'll give you some recommendations in the email and then
followup later here with the results. thx
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/ImpulseAdventure/GUIslice/issues/104#issuecomment-460068827,
or mute the thread
https://github.com/notifications/unsubscribe-auth/As48GV71--xPST3pQvQWBuINwJUOEFrdks5vJxY4gaJpZM4aU52K
.

I have forwarded you a compressed folder with the header files as they
exist currently on my end. If you need more files please let me know. I am
willing to start over with the proper files and reformat them once again
from the start. Now that I know what config files are critical in the
matter and how to obtain the screen information from my device, it should
be a simple matter, as you say. Perhaps I have confused some settings
throughout this process or transcribed something incorrectly. Starting over
may be a good thing now that all the information should be available. At
this point, it should be no harder than going through the provided
information, ensuring correct entry into the config files, and eliminating
any files or information that doesn't pertain. Thanks again for your time
and help. It has been a pleasure working with you.

Meant to followup earlier... I had understood from au42bl that the revised configuration provided by email was working correctly with his ILI9486 display, and all that remained was optimizing the calibration since his resistive overlay hardware had one corner that was not very responsive. With hardware scenarios like this I think the easiest solution is to offer an alternate calibration target location (ie. for this, relocating the calibration point, eg. with TARGET_MARGIN might be an option).
I have now created an example config for this particular shield and checked it into the repository as:
/configs/ard-shld-generic1_35_touch.h
Thanks again au42bl for all the helpful debug info!


[docs] Add package headings to 5.0.0-alpha.30 changelog

I knew something was off about https://github.com/mui-org/material-ui/pull/25731

Oh actually [Grid] Support custom number of columns seems to be a nice change for the highlights 🤷♂


fzf: Fix shell directory for archlinux package

A small change to fix #7110, I keep it minimal to stay as close possible to the upstream install script.
I also made a change to not clutter PATH if fzf is already available.
I tested these changes on the following fzf installations:

MacOS + brew
Archlinux + Pacman
Fedora + RPM
Linux + Git

Thanks Maxime!


ERROR: for pseudo_api  Cannot start service pseudo_api: Mounts denied: EOF

Hello,
I have an issue while launching ./run_docker.sh after setting the PSEUDO_MODEL_PATH in the .env file.
Don't really understand where does it come from.
`killing old docker processes
Going to remove pseudo_api
Removing pseudo_api ... done
building docker containers
Building pseudo_api
Step 1/7 : FROM continuumio/miniconda3
---> b4adc22212f1
Step 2/7 : WORKDIR usr/src/pseudo_api
---> Using cache
---> 4fc09068f87b
Step 3/7 : ADD environment.yml environment.yml
---> Using cache
---> 4ea39d9cc1ff
Step 4/7 : RUN conda env create -f environment.yml
---> Using cache
---> 344645bd5d67
Step 5/7 : ENV PATH /opt/conda/envs/flair_pseudo_api/bin:$PATH
---> Using cache
---> 3fdf613e4993
Step 6/7 : RUN /bin/bash -c "source activate flair_pseudo_api"
---> Using cache
---> e67600604e36
Step 7/7 : COPY . .
---> Using cache
---> 80a370c3eba9
Successfully built 80a370c3eba9
Successfully tagged pseudo_api_pseudo_api:latest
Building nginx
Step 1/5 : FROM nginx:1.15.8
---> f09fe80eb0e7
Step 2/5 : RUN rm /etc/nginx/nginx.conf
---> Using cache
---> bdd27fb821fa
Step 3/5 : COPY nginx.conf /etc/nginx/
---> Using cache
---> e0e7a8625886
Step 4/5 : RUN rm /etc/nginx/conf.d/default.conf
---> Using cache
---> 873fe1e2f07c
Step 5/5 : COPY project.conf /etc/nginx/conf.d/
---> Using cache
---> 71112c334b8c
Successfully built 71112c334b8c
Successfully tagged pseudo_api_nginx:latest
Creating pseudo_api ... error
ERROR: for pseudo_api  Cannot start service pseudo_api: Mounts denied: EOF
ERROR: for pseudo_api  Cannot start service pseudo_api: Mounts denied: EOF
ERROR: Encountered errors while bringing up the project.
`
Here is the docker-compose --verbose up :
`........
Starting pseudo_api ... error
compose.parallel.feed_queue: Pending: set()
ERROR: for pseudo_api  Cannot start service pseudo_api: Mounts denied: EOF
compose.parallel.parallel_execute_iter: Failed: <Service: pseudo_api>
compose.parallel.feed_queue: Pending: {<Service: nginx>}
compose.parallel.feed_queue: <Service: nginx> has upstream errors - not processing
compose.parallel.parallel_execute_iter: Failed: <Service: nginx>
compose.parallel.feed_queue: Pending: set()
ERROR: for pseudo_api  Cannot start service pseudo_api: Mounts denied: EOF
ERROR: compose.cli.main.main: Encountered errors while bringing up the project.
`
Do you have any idea where the issue is ?

Hi @dacostaHugo !  Was your problem solved ? If you still need help, do not hesitate !

Hello ! Just realized the model of your Ano isn't given. I tried to add my BERT one, doesnt work too. May be we can expect a reveal of the "best-model.pt" ;)