Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Haxe 4 changes, part 2 #387

Merged
merged 31 commits into from
Apr 22, 2019
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
31 commits
Select commit Hold shift + click to select a range
2edbc3e
bump minimum PHP version
Aurel300 Apr 17, 2019
6828762
macro-in-macro
Aurel300 Apr 17, 2019
b6c3318
unicode support
Aurel300 Apr 17, 2019
2cc1715
wording
Aurel300 Apr 17, 2019
ad74dd4
consistent formatting in language features
Aurel300 Apr 17, 2019
e59613c
markup literals
Aurel300 Apr 17, 2019
c818270
haxe evolution link in markup literals
Aurel300 Apr 17, 2019
731601f
externs, @:native, implementing dynamic
Aurel300 Apr 17, 2019
716b35b
also mention new alternative to implements dynamic
Aurel300 Apr 17, 2019
2a07e61
lua-vanilla
Aurel300 Apr 17, 2019
2ddc701
sys and threading
Aurel300 Apr 17, 2019
a43c219
typos, untyped in type system, *.Syntax API
Aurel300 Apr 17, 2019
c80238a
warn-var-shadowing
Aurel300 Apr 18, 2019
789e115
long argument names
Aurel300 Apr 18, 2019
c138706
PHP defines
Aurel300 Apr 18, 2019
69471dc
target feature defines, .platform.hx files
Aurel300 Apr 18, 2019
7a203e0
jquery and swfobject in hx3compat
Aurel300 Apr 18, 2019
fe62c9f
hx3compat
Aurel300 Apr 18, 2019
fde8468
just utest
Aurel300 Apr 18, 2019
77ffdbe
@:using
Aurel300 Apr 18, 2019
1dd8e07
target-specific packages, *.Lib
Aurel300 Apr 18, 2019
34cf7f2
IDE integration, very shortly
Aurel300 Apr 18, 2019
f6edf72
fix link to vshaxe debugging info
Aurel300 Apr 18, 2019
0301d6e
null safety
Aurel300 Apr 18, 2019
14676cc
@:persistent
Aurel300 Apr 18, 2019
1806c1d
debugging attempt 3
Aurel300 Apr 18, 2019
3dbc36d
fix latex errors
Aurel300 Apr 19, 2019
d6bff6d
fix more (all?!) --switches, sorry simn
Aurel300 Apr 19, 2019
2871e94
review changes
Aurel300 Apr 19, 2019
633856e
remove reference to Safety library
Aurel300 Apr 19, 2019
c2a73ff
comment out markup section
Aurel300 Apr 22, 2019
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
33 changes: 33 additions & 0 deletions HaxeManual/10-std.tex
Original file line number Diff line number Diff line change
Expand Up @@ -902,6 +902,10 @@ \subsection{Threading}
\section{Remoting}
\label{std-remoting}

\since{4.0.0}

\emph{Deprecated:} The remoting API has been removed from the standard library in Haxe 4. For compatibility purposes it is still available in the \href{https://github.com/HaxeFoundation/hx3compat/}{hx3compat} library. See \Fullref{std-hx3compat}.

Haxe remoting is a way to communicate between different platforms. With Haxe remoting, applications can transmit data transparently, send data and call methods between server and client side.

\paragraph{Related content}
Expand Down Expand Up @@ -1055,6 +1059,10 @@ \subsection{Implementation details}
\section{Unit Testing}
\label{std-unit-testing}

\since{4.0.0}

\emph{Deprecated:} The unit testing API has been removed from the standard library in Haxe 4. For compatibility purposes it is still available in the \href{https://github.com/HaxeFoundation/hx3compat/}{hx3compat} library. See \Fullref{std-hx3compat}.
Aurel300 marked this conversation as resolved.
Show resolved Hide resolved

The Haxe Standard Library provides basic unit testing classes from the \href{https://api.haxe.org/haxe/unit/}{haxe.unit} package.

\paragraph{Creating new test cases}
Expand Down Expand Up @@ -1128,3 +1136,28 @@ \section{Unit Testing}
\begin{itemize}
\item See the \href{https://api.haxe.org/haxe/unit/}{haxe.unit} package on the API documentation for more details.
\end{itemize}


\section{Haxe 3 Compatibility}
\label{std-hx3compat}
\since{4.0.0}

Some APIs that were originally a part of the standard library have been removed in Haxe 4. To allow projects to transition from Haxe 3 more smoothly, the \href{https://github.com/HaxeFoundation/hx3compat/}{hx3compat} library still provides these APIs. To use it, simply install it and compile the project with \ic{-L hx3compat}.

The full list of APIs in hx3compat is:

\begin{itemize}
\item \type{haxe.remoting.*} Haxe remoting
\item \type{haxe.unit.*} Unit testing
\item \type{haxe.web.*} Web request classes for Haxe web servers
\item \type{neko.net.*} Neko web server
\item (JavaScript target only) jQuery and SWFObject externs
\end{itemize}

Note that some of these APIs were removed form the standard library in favour of solutions in external libraries:

\begin{itemize}
\item \href{https://github.com/haxe-utest/utest}{haxe-utest} is a Haxe unit testing library.
Aurel300 marked this conversation as resolved.
Show resolved Hide resolved
\item \href{https://github.com/HaxeFoundation/hxnodejs}{hxnodejs} can be used to produce Node.js web servers in Haxe.
\end{itemize}

2 changes: 1 addition & 1 deletion HaxeManual/12-target-details.tex
Original file line number Diff line number Diff line change
Expand Up @@ -255,7 +255,7 @@ \subsection{Using external JavaScript libraries}

\since{4.0.0}

\emph{Deprecated:} The jQuery and SWFObject externs have been removed from the standard library in Haxe 4. For compatibility purposes they are available in the \href{https://github.com/HaxeFoundation/hx3compat/}{hx3compat} library.
\emph{Deprecated:} The jQuery and SWFObject externs have been removed from the standard library in Haxe 4. For compatibility purposes they are available in the \href{https://github.com/HaxeFoundation/hx3compat/}{hx3compat} library. See \Fullref{std-hx3compat}.

The \tref{externs mechanism}{lf-externs} provides access to the native APIs in a type-safe manner. It assumes that the defined types exist at run-time but assumes nothing about how and where those types are defined.

Expand Down