<feed xmlns='http://www.w3.org/2005/Atom'>
<title>pdf-tools.git/server/test, branch master</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<link rel='alternate' type='text/html' href='http://git.tews.dev/cgit/pdf-tools.git/'/>
<entry>
<title>Extend docker testing framework to test against Emacs versions</title>
<updated>2022-11-25T07:27:23+00:00</updated>
<author>
<name>Vedang Manerikar</name>
<email>ved.manerikar@gmail.com</email>
</author>
<published>2022-11-24T13:30:30+00:00</published>
<link rel='alternate' type='text/html' href='http://git.tews.dev/cgit/pdf-tools.git/commit/?id=7a51b38310014628fe4ada9731d6d63657e8f209'/>
<id>7a51b38310014628fe4ada9731d6d63657e8f209</id>
<content type='text'>
Until this commit, docker-based local testing only checked whether the
epdfinfo server compiled correctly. With this commit, local testing
now also runs elisp tests against the different versions of Emacs we
currently support.

All versions of Emacs are run on Ubuntu at the moment,
but going forward I expect that we will add more operating system
variants to this matrix as well.

As test coverage increases, this will help automate away a lot of the
tests!

Relates to: #130
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Until this commit, docker-based local testing only checked whether the
epdfinfo server compiled correctly. With this commit, local testing
now also runs elisp tests against the different versions of Emacs we
currently support.

All versions of Emacs are run on Ubuntu at the moment,
but going forward I expect that we will add more operating system
variants to this matrix as well.

As test coverage increases, this will help automate away a lot of the
tests!

Relates to: #130
</pre>
</div>
</content>
</entry>
<entry>
<title>Enable testing against MacOS in CI/CD!</title>
<updated>2022-10-07T14:04:45+00:00</updated>
<author>
<name>Vedang Manerikar</name>
<email>ved.manerikar@gmail.com</email>
</author>
<published>2022-10-06T12:45:55+00:00</published>
<link rel='alternate' type='text/html' href='http://git.tews.dev/cgit/pdf-tools.git/commit/?id=d6980bc3273e1cf1a73feee6bb523d1568405685'/>
<id>d6980bc3273e1cf1a73feee6bb523d1568405685</id>
<content type='text'>
This is pretty cool, I hope it works! 🤞 It uses the `macos` orb
provided by CircleCI, as documented here:
https://circleci.com/docs/using-macos

This commit also rewrites the older anchor style common steps into the
newer command syntax, which is more readable. The command syntax is
documented here:
https://circleci.com/docs/configuration-reference#commands

Installing pre-reqs on MacOS via `brew` was non-trivial. This is
mainly because of the `sed` command used in the `Makefile`. It isn't a
problem normally because it is only used for packaging, which is done
on Melpa

Relates to: #98
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is pretty cool, I hope it works! 🤞 It uses the `macos` orb
provided by CircleCI, as documented here:
https://circleci.com/docs/using-macos

This commit also rewrites the older anchor style common steps into the
newer command syntax, which is more readable. The command syntax is
documented here:
https://circleci.com/docs/configuration-reference#commands

Installing pre-reqs on MacOS via `brew` was non-trivial. This is
mainly because of the `sed` command used in the `Makefile`. It isn't a
problem normally because it is only used for packaging, which is done
on Melpa

Relates to: #98
</pre>
</div>
</content>
</entry>
<entry>
<title>Add make targets to start / stop the podman VM</title>
<updated>2022-10-06T10:39:55+00:00</updated>
<author>
<name>Vedang Manerikar</name>
<email>ved.manerikar@gmail.com</email>
</author>
<published>2022-10-06T10:30:10+00:00</published>
<link rel='alternate' type='text/html' href='http://git.tews.dev/cgit/pdf-tools.git/commit/?id=53506771c42e0456ee909aa8e0a589233fd1f1ef'/>
<id>53506771c42e0456ee909aa8e0a589233fd1f1ef</id>
<content type='text'>
This is just a convenience wrapper for me
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is just a convenience wrapper for me
</pre>
</div>
</content>
</entry>
<entry>
<title>Speed up server testing by keeping the containers around</title>
<updated>2022-10-06T10:39:44+00:00</updated>
<author>
<name>Vedang Manerikar</name>
<email>ved.manerikar@gmail.com</email>
</author>
<published>2022-10-06T10:28:22+00:00</published>
<link rel='alternate' type='text/html' href='http://git.tews.dev/cgit/pdf-tools.git/commit/?id=e6d1df44a1a49e9c35c0153bbe219a7303c3d762'/>
<id>e6d1df44a1a49e9c35c0153bbe219a7303c3d762</id>
<content type='text'>
This allows re-using containers, saving a tremendous amount of time.

The drawback here is that any environment change (on the docker /
podman containers side) is not detected. The way to deal with this
will be to create a process around major releases where I delete all
the containers and re-test from scratch.

Relates to: #130
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This allows re-using containers, saving a tremendous amount of time.

The drawback here is that any environment change (on the docker /
podman containers side) is not detected. The way to deal with this
will be to create a process around major releases where I delete all
the containers and re-test from scratch.

Relates to: #130
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix: Dockerfile for ubuntu-18/20 needs fix-missing</title>
<updated>2022-07-21T23:12:03+00:00</updated>
<author>
<name>Vedang Manerikar</name>
<email>ved.manerikar@gmail.com</email>
</author>
<published>2022-07-21T23:06:06+00:00</published>
<link rel='alternate' type='text/html' href='http://git.tews.dev/cgit/pdf-tools.git/commit/?id=0b8d47ddddbf2e41a446df847701d00a9de01745'/>
<id>0b8d47ddddbf2e41a446df847701d00a9de01745</id>
<content type='text'>
The output on the terminal suggested using fix-missing, which seems to
fix the sources and find the packages :)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The output on the terminal suggested using fix-missing, which seems to
fix the sources and find the packages :)
</pre>
</div>
</content>
</entry>
<entry>
<title>Test and Documentation changes: dockerfiles and readme</title>
<updated>2022-07-21T00:13:39+00:00</updated>
<author>
<name>Vedang Manerikar</name>
<email>ved.manerikar@gmail.com</email>
</author>
<published>2022-07-16T17:55:35+00:00</published>
<link rel='alternate' type='text/html' href='http://git.tews.dev/cgit/pdf-tools.git/commit/?id=24e7095bfe191638f41494804ad16633a08eaa27'/>
<id>24e7095bfe191638f41494804ad16633a08eaa27</id>
<content type='text'>
README changes:
- Add documentation on how to test / add support for your favorite
operating system.

Dockerfile changes:
- Rename Dockerfile.in to Dockerfile.common.in, to make the name
clearer.
- Add make as a prerequisite in the Dockerfile.
  + It is needed to run make commands and is not available in some of
  these images.
- Add make targets for printing operating systems that are not yet
supported in Docker testing.
  + This should help contributors with adding support for testing on
  these systems.
  + New targets are `server-test-supported` and
  `server-test-unsupported` at the top level.

Related to: #130
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
README changes:
- Add documentation on how to test / add support for your favorite
operating system.

Dockerfile changes:
- Rename Dockerfile.in to Dockerfile.common.in, to make the name
clearer.
- Add make as a prerequisite in the Dockerfile.
  + It is needed to run make commands and is not available in some of
  these images.
- Add make targets for printing operating systems that are not yet
supported in Docker testing.
  + This should help contributors with adding support for testing on
  these systems.
  + New targets are `server-test-supported` and
  `server-test-unsupported` at the top level.

Related to: #130
</pre>
</div>
</content>
</entry>
<entry>
<title>Add a Makefile target to clean docker containers</title>
<updated>2022-05-22T00:13:27+00:00</updated>
<author>
<name>Vedang Manerikar</name>
<email>ved.manerikar@gmail.com</email>
</author>
<published>2022-05-20T22:20:40+00:00</published>
<link rel='alternate' type='text/html' href='http://git.tews.dev/cgit/pdf-tools.git/commit/?id=f9ccdf99e560bae70d3a13325cec9dc0e3cc45b0'/>
<id>f9ccdf99e560bae70d3a13325cec9dc0e3cc45b0</id>
<content type='text'>
No point leaving dead containers lying around.

Relates to: #98
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
No point leaving dead containers lying around.

Relates to: #98
</pre>
</div>
</content>
</entry>
<entry>
<title>Create named containers when running docker/podman tests</title>
<updated>2022-05-22T00:12:17+00:00</updated>
<author>
<name>Vedang Manerikar</name>
<email>ved.manerikar@gmail.com</email>
</author>
<published>2022-05-20T22:19:10+00:00</published>
<link rel='alternate' type='text/html' href='http://git.tews.dev/cgit/pdf-tools.git/commit/?id=4be4df7cf79d96aba32c16d0a21426f89566c9b0'/>
<id>4be4df7cf79d96aba32c16d0a21426f89566c9b0</id>
<content type='text'>
This simplifies container operations and ensures that we don't have
dead containers hanging around.

Relates to: #98
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This simplifies container operations and ensures that we don't have
dead containers hanging around.

Relates to: #98
</pre>
</div>
</content>
</entry>
<entry>
<title>Update the current Dockerfile templates</title>
<updated>2022-05-22T00:06:50+00:00</updated>
<author>
<name>Vedang Manerikar</name>
<email>ved.manerikar@gmail.com</email>
</author>
<published>2022-05-17T16:55:15+00:00</published>
<link rel='alternate' type='text/html' href='http://git.tews.dev/cgit/pdf-tools.git/commit/?id=a243f410a04738128004e420eb828db026749943'/>
<id>a243f410a04738128004e420eb828db026749943</id>
<content type='text'>
- Move all package installation to the autobuild file.
  The Dockerfile should simply start a container and make sure that
  all the package repositories are updated.

- Dockerfiles should spin up containers for the latest (ish) releases
  of the major Linux operating systems.

- Disable Dockerfiles for environments which are not working
  correctly.

List of operating systems where `epdfinfo` server compilation is
tested and working correctly:
- Debian (9, 10, 11)
- Ubuntu (18, 20, 22)
- Fedora (34, 35, 36)

List of operating systems where `epdfinfo` server compilation is
failing inside the containers, for unknown reasons:
- Gentoo
- Centos
- Archlinux

List of operating systems that need to be added to containerized
testing:
- MacOSX
- Windows via Msys2 (Mingw32, Mingw64)
- OpenBSD
- FreeBSD
- NixOS
- Void
- OpenSuse

Relates to: #98
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- Move all package installation to the autobuild file.
  The Dockerfile should simply start a container and make sure that
  all the package repositories are updated.

- Dockerfiles should spin up containers for the latest (ish) releases
  of the major Linux operating systems.

- Disable Dockerfiles for environments which are not working
  correctly.

List of operating systems where `epdfinfo` server compilation is
tested and working correctly:
- Debian (9, 10, 11)
- Ubuntu (18, 20, 22)
- Fedora (34, 35, 36)

List of operating systems where `epdfinfo` server compilation is
failing inside the containers, for unknown reasons:
- Gentoo
- Centos
- Archlinux

List of operating systems that need to be added to containerized
testing:
- MacOSX
- Windows via Msys2 (Mingw32, Mingw64)
- OpenBSD
- FreeBSD
- NixOS
- Void
- OpenSuse

Relates to: #98
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove usage of all private poppler headers in pdf-tools</title>
<updated>2022-05-22T00:06:15+00:00</updated>
<author>
<name>Pi-Cla</name>
<email>pirateclip@protonmail.com</email>
</author>
<published>2022-05-05T06:05:22+00:00</published>
<link rel='alternate' type='text/html' href='http://git.tews.dev/cgit/pdf-tools.git/commit/?id=97a298192978788db9adbe723b1aa384e2ddf638'/>
<id>97a298192978788db9adbe723b1aa384e2ddf638</id>
<content type='text'>
This commit also removes C++ entirely, as it is not needed anymore for
correct compilation of `epdfinfo`. The following changes are made:

- Remove private headers from all the server code. This involves:
  - Replace private header functionality with the correct public
    functions provided by poppler.
  - Remove unneeded headers around date checks
  - Delete dead-code (headers, m4 macros)

- Remove C++, g++ and similar aliases from all the code. Also:
  - Remove related information from the README
  - Remove related information from CI and Dockerfiles

Work done by: @Pi-Cla
Closes: #105, #103, #109, #114
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This commit also removes C++ entirely, as it is not needed anymore for
correct compilation of `epdfinfo`. The following changes are made:

- Remove private headers from all the server code. This involves:
  - Replace private header functionality with the correct public
    functions provided by poppler.
  - Remove unneeded headers around date checks
  - Delete dead-code (headers, m4 macros)

- Remove C++, g++ and similar aliases from all the code. Also:
  - Remove related information from the README
  - Remove related information from CI and Dockerfiles

Work done by: @Pi-Cla
Closes: #105, #103, #109, #114
</pre>
</div>
</content>
</entry>
</feed>
